Expand description
URL scheme for referencing Unity Catalog securables.
Defines a single, conventional URL grammar that addresses Unity Catalog
volumes, tables, and raw external paths through one parser. The Rust
unitycatalog-object-store factory and the Python unitycatalog_client
bindings both consume this type so the URL surface stays in lock-step
across languages.
§Scheme
| URL shape | Vending endpoint |
|---|---|
uc:///Volumes/<catalog>/<schema>/<volume>[/<path>] | temporary-volume-credentials |
uc:///Tables/<catalog>/<schema>/<table> | temporary-table-credentials |
s3://, s3a://, gs://, abfs://, abfss://, az://, azure://, r2:// raw cloud URL | temporary-path-credentials |
For ecosystem compatibility, the parser also accepts the
vol+dbfs:/Volumes/<catalog>/<schema>/<volume>[/<path>] form used by
some Databricks credential-vending samples — it is treated as identical
to the uc:///Volumes/... form.
§Why the kind goes in the path
The capitalised Volumes / Tables segment mirrors the Databricks
workspace POSIX convention (/Volumes/<catalog>/<schema>/<volume>/...).
It can’t live in the URL authority because Unity Catalog names commonly
contain underscores, which are not allowed in hostnames per RFC 1123 and
which url::Url would silently lowercase.
§Case-insensitivity
Kind segments are matched case-insensitively, so /Volumes/...,
/volumes/..., and /VOLUMES/... all dispatch the same way. The
capitalised form is canonical in docs because it matches the Databricks
workspace path convention; the lowercase form matches the REST API.
Catalog, schema, volume, and table names are passed through verbatim.
Enums§
- UCReference
- A parsed reference to a Unity Catalog securable.