openapi: 3.0.3
info:
title: ""
version: 0.0.1
tags:
- name: AgentSkillsService
description: |-
Service for managing agent skills in Unity Catalog.
Agent skills are storage-backed directories (SKILL.md + optional resources)
within a schema. This is an early-stage (v0alpha1) surface aligned with the
Open Sharing agent-skill community proposal.
- name: AgentsService
description: |-
Service for managing agents in Unity Catalog.
Agents are remote invocable services (endpoint + invocation protocol) within a
schema. This is an early-stage (v0alpha1) surface aligned with the Open
Sharing agent community proposal.
- name: CatalogsService
description: Manage catalogs and schemas in the service.
- name: CredentialsService
description: |-
Manage credentials to access external data sources and services
as well as generate signed urls for the Delta Sharing service.
- name: EntityTagAssignmentsService
description: Manage assignments of tags to Unity Catalog entities.
- name: ExternalLocationsService
description: |-
Service for managing external locations in Unity Catalog.
External locations define cloud storage paths accessible via storage credentials.
- name: FunctionsService
description: Manage User-Defined Functions (UDFs) in the service.
- name: ModelVersionsService
description: |-
Manage model versions in the service.
A model version belongs to a registered model and is identified by the model's
three-level name plus a server-assigned integer version. It carries its own
artifact storage location and READY/PENDING lifecycle.
- name: PoliciesService
description: Manage ABAC row-filter and column-mask policies bound to Unity Catalog securables.
- name: ProvidersService
description: |-
Providers
A provider represents an organization that shares data with this metastore.
It is the inbound counterpart of a recipient: registered from a share
activation/credential file and used to access shares offered by an upstream
Delta Sharing server.
- name: RecipientsService
description: |-
Recipients
A recipient is an object you create using recipients/create to represent an organization which
you want to allow access shares. when you create a recipient object, Unity Catalog generates an
activation link you can send to the recipient. The recipient follows the activation link to download
the credential file, and then uses the credential file to establish a secure connection to receive
the shared data. This sharing mode is called open sharing.
- name: RegisteredModelsService
description: |-
Manage registered models in the service.
A registered model is a securable in the three-level namespace
(catalog.schema.model) that groups a collection of model versions.
- name: SchemasService
description: |-
A schema (also called a database) is the second layer of Unity Catalog’s three-level namespace.
A schema organizes tables, views and functions. To access (or list) a table or view in a schema,
users must have the USE_SCHEMA data permission on the schema and its parent catalog, and they must
have the SELECT permission on the table or view.
- name: SharesService
description: Service for managing shares
- name: StagingTablesService
description: |-
A staging table reserves an id and storage location for a Unity Catalog
managed table. After creating one, the client writes the initial Delta commit
at the returned staging_location and finalizes the table via CreateTable.
- name: TablesService
description: |-
Service for managing tables in Unity Catalog.
Tables represent structured data stored in a schema, supporting managed and external storage formats.
- name: TagPoliciesService
description: Manage governed tag definitions (tag policies).
- name: TemporaryCredentialsService
description: |-
Service for generating temporary credentials to access tables and storage paths.
Credentials are short-lived and scoped to a specific operation (read or read/write).
- name: VolumesService
description: |-
Service for managing volumes in Unity Catalog.
Volumes represent logical storage locations (managed or external) within a schema.
paths:
/agent-skills:
get:
tags:
- AgentSkillsService
description: Lists agent skills.
operationId: ListAgentSkills
parameters:
- name: catalog_name
in: query
description: The identifier of the catalog.
schema:
type: string
- name: schema_name
in: query
description: The identifier of the schema.
schema:
type: string
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
- name: include_browse
in: query
description: |-
Whether to include agent skills in the response for which the principal can
only access selective metadata for.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListAgentSkillsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- AgentSkillsService
operationId: CreateAgentSkill
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateAgentSkillRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/AgentSkill"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/agent-skills/{name}:
get:
tags:
- AgentSkillsService
operationId: GetAgentSkill
parameters:
- name: name
in: path
description: The three-level (fully qualified) name of the agent skill.
required: true
schema:
type: string
- name: include_browse
in: query
description: |-
Whether to include agent skills in the response for which the principal can
only access selective metadata for.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/AgentSkill"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- AgentSkillsService
operationId: DeleteAgentSkill
parameters:
- name: name
in: path
description: The three-level (fully qualified) name of the agent skill.
required: true
schema:
type: string
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- AgentSkillsService
operationId: UpdateAgentSkill
parameters:
- name: name
in: path
description: The three-level (fully qualified) name of the agent skill.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateAgentSkillRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/AgentSkill"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/agents:
get:
tags:
- AgentsService
description: Lists agents.
operationId: ListAgents
parameters:
- name: catalog_name
in: query
description: The identifier of the catalog.
schema:
type: string
- name: schema_name
in: query
description: The identifier of the schema.
schema:
type: string
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
- name: include_browse
in: query
description: |-
Whether to include agents in the response for which the principal can only
access selective metadata for.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListAgentsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- AgentsService
operationId: CreateAgent
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateAgentRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Agent"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/agents/{name}:
get:
tags:
- AgentsService
operationId: GetAgent
parameters:
- name: name
in: path
description: The three-level (fully qualified) name of the agent.
required: true
schema:
type: string
- name: include_browse
in: query
description: |-
Whether to include agents in the response for which the principal can only
access selective metadata for.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Agent"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- AgentsService
operationId: DeleteAgent
parameters:
- name: name
in: path
description: The three-level (fully qualified) name of the agent.
required: true
schema:
type: string
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- AgentsService
operationId: UpdateAgent
parameters:
- name: name
in: path
description: The three-level (fully qualified) name of the agent.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateAgentRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Agent"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/catalogs:
get:
tags:
- CatalogsService
description: |-
List catalogs
Gets an array of catalogs in the metastore. If the caller is the metastore admin,
all catalogs will be retrieved. Otherwise, only catalogs owned by the caller
(or for which the caller has the USE_CATALOG privilege) will be retrieved.
There is no guarantee of a specific ordering of the elements in the array.
operationId: ListCatalogs
parameters:
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListCatalogsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- CatalogsService
description: |-
Create a new catalog
Creates a new catalog instance in the parent metastore if the caller
is a metastore admin or has the CREATE_CATALOG privilege.
operationId: CreateCatalog
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateCatalog"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/CatalogInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/catalogs/{name}:
get:
tags:
- CatalogsService
description: |-
Get a catalog
Gets the specified catalog in a metastore. The caller must be a metastore admin,
the owner of the catalog, or a user that has the USE_CATALOG privilege set for their account.
operationId: GetCatalog
parameters:
- name: name
in: path
description: Name of catalog.
required: true
schema:
type: string
- name: include_browse
in: query
description: Whether to include catalogs in the response for which the principal can only access selective metadata for
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/CatalogInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- CatalogsService
description: |-
Delete a catalog
Deletes the catalog that matches the supplied name. The caller must
be a metastore admin or the owner of the catalog.
operationId: DeleteCatalog
parameters:
- name: name
in: path
description: Name of catalog.
required: true
schema:
type: string
- name: force
in: query
description: Force deletion even if the catalog is not empty.
schema:
type: boolean
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- CatalogsService
description: |-
Update a catalog
Updates the catalog that matches the supplied name. The caller must be either
the owner of the catalog, or a metastore admin (when changing the owner field of the catalog).
operationId: UpdateCatalog
parameters:
- name: name
in: path
description: Name of catalog.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateCatalogRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/CatalogInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/credentials:
get:
tags:
- CredentialsService
operationId: ListCredentials
parameters:
- name: purpose
in: query
description: Return only credentials for the specified purpose.
schema:
enum:
- PURPOSE_UNSPECIFIED
- STORAGE
- SERVICE
type: string
format: enum
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListCredentialsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- CredentialsService
operationId: CreateCredential
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateCredentialRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/CredentialInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/credentials/{name}:
get:
tags:
- CredentialsService
operationId: GetCredential
parameters:
- name: name
in: path
description: Name of credential.
required: true
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/CredentialInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- CredentialsService
operationId: DeleteCredential
parameters:
- name: name
in: path
description: Name of credential.
required: true
schema:
type: string
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- CredentialsService
operationId: UpdateCredential
parameters:
- name: name
in: path
description: Name of credential.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateCredentialRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/CredentialInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/entity-tag-assignments:
post:
tags:
- EntityTagAssignmentsService
description: |-
Create an entity tag assignment
Assigns a tag to a Unity Catalog entity.
operationId: CreateEntityTagAssignment
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateEntityTagAssignmentRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/EntityTagAssignment"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/entity-tag-assignments/{entity_type}/{entity_name}/tags:
get:
tags:
- EntityTagAssignmentsService
description: |-
List entity tag assignments
Gets the tag assignments for the specified entity.
operationId: ListEntityTagAssignments
parameters:
- name: entity_type
in: path
description: The type of the entity whose tag assignments to list.
required: true
schema:
type: string
- name: entity_name
in: path
description: The fully qualified name of the entity whose tag assignments to list.
required: true
schema:
type: string
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListEntityTagAssignmentsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/entity-tag-assignments/{entity_type}/{entity_name}/tags/{tag_key}:
get:
tags:
- EntityTagAssignmentsService
description: |-
Get an entity tag assignment
Gets the tag assignment for the specified entity and tag key.
operationId: GetEntityTagAssignment
parameters:
- name: entity_type
in: path
description: The type of the entity to which the tag is assigned.
required: true
schema:
type: string
- name: entity_name
in: path
description: The fully qualified name of the entity to which the tag is assigned.
required: true
schema:
type: string
- name: tag_key
in: path
description: The key of the tag.
required: true
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/EntityTagAssignment"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- EntityTagAssignmentsService
description: |-
Delete an entity tag assignment
Deletes the tag assignment for the specified entity and tag key.
operationId: DeleteEntityTagAssignment
parameters:
- name: entity_type
in: path
description: The type of the entity to which the tag is assigned.
required: true
schema:
type: string
- name: entity_name
in: path
description: The fully qualified name of the entity to which the tag is assigned.
required: true
schema:
type: string
- name: tag_key
in: path
description: The key of the tag to delete.
required: true
schema:
type: string
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- EntityTagAssignmentsService
description: |-
Update an entity tag assignment
Updates the tag assignment for the specified entity and tag key.
operationId: UpdateEntityTagAssignment
parameters:
- name: entity_type
in: path
description: The type of the entity to which the tag is assigned.
required: true
schema:
type: string
- name: entity_name
in: path
description: The fully qualified name of the entity to which the tag is assigned.
required: true
schema:
type: string
- name: tag_key
in: path
description: The key of the tag to update.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateEntityTagAssignmentRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/EntityTagAssignment"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/external-locations:
get:
tags:
- ExternalLocationsService
description: List external locations
operationId: ListExternalLocations
parameters:
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
- name: include_browse
in: query
description: Whether to include schemas in the response for which the principal can only access selective metadata for
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListExternalLocationsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- ExternalLocationsService
description: Create a new external location
operationId: CreateExternalLocation
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateExternalLocation"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ExternalLocationInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/external-locations/{name}:
get:
tags:
- ExternalLocationsService
description: Get an external location
operationId: GetExternalLocation
parameters:
- name: name
in: path
description: Name of external location.
required: true
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ExternalLocationInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- ExternalLocationsService
description: Delete an external location
operationId: DeleteExternalLocation
parameters:
- name: name
in: path
description: Name of external location.
required: true
schema:
type: string
- name: force
in: query
description: Force deletion even if the external location is not empty.
schema:
type: boolean
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- ExternalLocationsService
description: Update an external location
operationId: UpdateExternalLocation
parameters:
- name: name
in: path
description: Name of external location.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateExternalLocationRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ExternalLocationInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/functions:
get:
tags:
- FunctionsService
description: |-
List functions
List functions within the specified parent catalog and schema. If the caller is the metastore
admin, all functions are returned in the response. Otherwise, the caller must have USE_CATALOG
on the parent catalog and USE_SCHEMA on the parent schema, and the function must either be
owned by the caller or have SELECT on the function.
operationId: ListFunctions
parameters:
- name: catalog_name
in: query
description: Name of parent catalog for functions of interest.
schema:
type: string
- name: schema_name
in: query
description: Parent schema of functions.
schema:
type: string
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
- name: include_browse
in: query
description: Whether to include functions in the response for which the principal can only access selective metadata for.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListFunctionsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- FunctionsService
description: |-
Create a function
Creates a new function. The caller must be a metastore admin or have the CREATE_FUNCTION
privilege on the parent catalog and schema.
operationId: CreateFunction
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateFunction"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/FunctionInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/functions/{name}:
get:
tags:
- FunctionsService
description: |-
Get a function
Gets a function from within a parent catalog and schema. For the fetch to succeed,
the caller must be a metastore admin, the owner of the function, or have SELECT on
the function.
operationId: GetFunction
parameters:
- name: name
in: path
description: "The fully-qualified name of the function (three-level name: catalog.schema.function)."
required: true
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/FunctionInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- FunctionsService
description: |-
Delete a function
Deletes the function that matches the supplied name. For the deletion to succeed,
the caller must be the owner of the function.
operationId: DeleteFunction
parameters:
- name: name
in: path
description: "The fully-qualified name of the function (three-level name: catalog.schema.function)."
required: true
schema:
type: string
- name: force
in: query
description: Force deletion even if the function is not empty.
schema:
type: boolean
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- FunctionsService
description: |-
Update a function
Updates the function that matches the supplied name. Only the owner of the function
can be updated.
operationId: UpdateFunction
parameters:
- name: name
in: path
description: "The fully-qualified name of the function (three-level name: catalog.schema.function)."
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateFunctionRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/FunctionInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/models:
get:
tags:
- RegisteredModelsService
description: |-
List registered models
List registered models within the specified parent catalog and schema. If
the caller is the metastore admin, all registered models are returned in the
response. Otherwise, the caller must have USE_CATALOG on the parent catalog
and USE_SCHEMA on the parent schema, and the model must either be owned by
the caller or the caller must have a privilege on the model.
operationId: ListRegisteredModels
parameters:
- name: catalog_name
in: query
description: Name of parent catalog for models of interest.
schema:
type: string
- name: schema_name
in: query
description: Name of parent schema for models of interest.
schema:
type: string
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
- name: include_browse
in: query
description: |-
Whether to include registered models in the response for which the principal
can only access selective metadata for.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListRegisteredModelsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- RegisteredModelsService
description: |-
Create a registered model
Creates a new registered model. The caller must be a metastore admin or have
the CREATE_MODEL privilege on the parent catalog and schema.
operationId: CreateRegisteredModel
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateRegisteredModel"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/RegisteredModelInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/models/versions:
post:
tags:
- ModelVersionsService
description: |-
Create a model version
Creates a new model version in PENDING_REGISTRATION status. The server
assigns the version number and a storage location for the artifacts. The
caller must be a metastore admin or the owner of the parent registered model.
operationId: CreateModelVersion
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateModelVersionRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ModelVersion"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/models/{full_name}:
get:
tags:
- RegisteredModelsService
description: |-
Get a registered model
Gets a registered model from within a parent catalog and schema. For the
fetch to succeed, the caller must be a metastore admin, the owner of the
registered model, or have a privilege on the registered model.
operationId: GetRegisteredModel
parameters:
- name: full_name
in: path
description: |-
The fully-qualified name of the registered model (three-level name:
catalog.schema.model).
required: true
schema:
type: string
- name: include_browse
in: query
description: |-
Whether to include registered models in the response for which the principal
can only access selective metadata for.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/RegisteredModelInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- RegisteredModelsService
description: |-
Delete a registered model
Deletes the registered model that matches the supplied name. For the deletion
to succeed, the caller must be the owner of the registered model.
operationId: DeleteRegisteredModel
parameters:
- name: full_name
in: path
description: |-
The fully-qualified name of the registered model (three-level name:
catalog.schema.model).
required: true
schema:
type: string
- name: force
in: query
description: Force deletion even if the registered model still has model versions.
schema:
type: boolean
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- RegisteredModelsService
description: |-
Update a registered model
Updates the registered model that matches the supplied name.
operationId: UpdateRegisteredModel
parameters:
- name: full_name
in: path
description: |-
The fully-qualified name of the registered model (three-level name:
catalog.schema.model).
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateRegisteredModelRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/RegisteredModelInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/models/{full_name}/versions:
get:
tags:
- ModelVersionsService
description: |-
List model versions
List the model versions of the specified registered model. If the caller is
the metastore admin, all model versions are returned. Otherwise, the caller
must have the appropriate privileges on the parent model.
operationId: ListModelVersions
parameters:
- name: full_name
in: path
description: |-
The full three-level name of the registered model (catalog.schema.model)
whose versions are being listed.
required: true
schema:
type: string
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
- name: include_browse
in: query
description: |-
Whether to include model versions in the response for which the principal can
only access selective metadata for.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListModelVersionsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/models/{full_name}/versions/{version}:
get:
tags:
- ModelVersionsService
description: |-
Get a model version
Gets a model version by its parent model name and version number.
operationId: GetModelVersion
parameters:
- name: full_name
in: path
description: |-
The full three-level name of the parent registered model
(catalog.schema.model).
required: true
schema:
type: string
- name: version
in: path
description: The integer version number of the model version.
required: true
schema:
type: string
- name: include_browse
in: query
description: |-
Whether to include model versions in the response for which the principal can
only access selective metadata for.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ModelVersion"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- ModelVersionsService
description: |-
Delete a model version
Deletes the model version that matches the supplied name and version. For the
deletion to succeed, the caller must be the owner of the parent registered
model.
operationId: DeleteModelVersion
parameters:
- name: full_name
in: path
description: |-
The full three-level name of the parent registered model
(catalog.schema.model).
required: true
schema:
type: string
- name: version
in: path
description: The integer version number of the model version.
required: true
schema:
type: string
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- ModelVersionsService
description: |-
Update a model version
Updates the model version that matches the supplied name and version.
operationId: UpdateModelVersion
parameters:
- name: full_name
in: path
description: |-
The full three-level name of the parent registered model
(catalog.schema.model).
required: true
schema:
type: string
- name: version
in: path
description: The integer version number of the model version.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateModelVersionRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ModelVersion"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/models/{full_name}/versions/{version}/finalize:
patch:
tags:
- ModelVersionsService
description: |-
Finalize a model version
Transitions a model version to READY once all artifacts have been written to
its storage location.
operationId: FinalizeModelVersion
parameters:
- name: full_name
in: path
description: |-
The full three-level name of the parent registered model
(catalog.schema.model).
required: true
schema:
type: string
- name: version
in: path
description: The integer version number of the model version to finalize.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/FinalizeModelVersionRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ModelVersion"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/policies/{on_securable_type}/{on_securable_fullname}:
get:
tags:
- PoliciesService
description: |-
List policies
Gets an array of policies defined on the specified securable. There is no guarantee
of a specific ordering of the elements in the array.
operationId: ListPolicies
parameters:
- name: on_securable_type
in: path
description: |-
The type of the securable to list policies on.
Supported values: catalogs, schemas, tables.
required: true
schema:
type: string
- name: on_securable_fullname
in: path
description: The fully qualified name of the securable to list policies on.
required: true
schema:
type: string
- name: include_inherited
in: query
description: |-
When true, also return policies defined on the securable's ancestors
(e.g. for a table: its schema and catalog). Each returned PolicyInfo still
carries its own on_securable_type / on_securable_fullname, so callers can see
where it was defined.
schema:
type: boolean
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListPoliciesResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- PoliciesService
description: |-
Create a new policy
Creates a new row-filter or column-mask policy on the specified securable.
operationId: CreatePolicy
parameters:
- name: on_securable_type
in: path
description: |-
The type of the securable to create the policy on.
Supported values: catalogs, schemas, tables.
required: true
schema:
type: string
- name: on_securable_fullname
in: path
description: The fully qualified name of the securable to create the policy on.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/PolicyInfo"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/PolicyInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/policies/{on_securable_type}/{on_securable_fullname}/{name}:
get:
tags:
- PoliciesService
description: |-
Get a policy
Gets the policy that matches the supplied name, defined on the specified securable.
operationId: GetPolicy
parameters:
- name: on_securable_type
in: path
description: |-
The type of the securable the policy is defined on.
Supported values: catalogs, schemas, tables.
required: true
schema:
type: string
- name: on_securable_fullname
in: path
description: The fully qualified name of the securable the policy is defined on.
required: true
schema:
type: string
- name: name
in: path
description: The name of the policy.
required: true
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/PolicyInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- PoliciesService
description: |-
Delete a policy
Deletes the policy that matches the supplied name, defined on the specified securable.
operationId: DeletePolicy
parameters:
- name: on_securable_type
in: path
description: |-
The type of the securable the policy is defined on.
Supported values: catalogs, schemas, tables.
required: true
schema:
type: string
- name: on_securable_fullname
in: path
description: The fully qualified name of the securable the policy is defined on.
required: true
schema:
type: string
- name: name
in: path
description: The name of the policy to delete.
required: true
schema:
type: string
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- PoliciesService
description: |-
Update a policy
Updates the policy that matches the supplied name, defined on the specified securable.
operationId: UpdatePolicy
parameters:
- name: on_securable_type
in: path
description: |-
The type of the securable the policy is defined on.
Supported values: catalogs, schemas, tables.
required: true
schema:
type: string
- name: on_securable_fullname
in: path
description: The fully qualified name of the securable the policy is defined on.
required: true
schema:
type: string
- name: name
in: path
description: The name of the policy to update.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdatePolicyRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/PolicyInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/providers:
get:
tags:
- ProvidersService
description: List providers.
operationId: ListProviders
parameters:
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListProvidersResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- ProvidersService
description: Create a new provider.
operationId: CreateProvider
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateProviderRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Provider"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/providers/{name}:
get:
tags:
- ProvidersService
description: Get a provider by name.
operationId: GetProvider
parameters:
- name: name
in: path
description: Name of the provider.
required: true
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Provider"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- ProvidersService
description: Delete a provider.
operationId: DeleteProvider
parameters:
- name: name
in: path
description: Name of the provider.
required: true
schema:
type: string
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- ProvidersService
description: Update a provider.
operationId: UpdateProvider
parameters:
- name: name
in: path
description: Name of the provider.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateProviderRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Provider"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/recipients:
get:
tags:
- RecipientsService
description: List recipients.
operationId: ListRecipients
parameters:
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListRecipientsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- RecipientsService
description: Create a new recipient.
operationId: CreateRecipient
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateRecipientRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Recipient"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/recipients/{name}:
get:
tags:
- RecipientsService
description: Get a recipient by name.
operationId: GetRecipient
parameters:
- name: name
in: path
description: Name of the recipient.
required: true
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Recipient"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- RecipientsService
description: Delete a recipient.
operationId: DeleteRecipient
parameters:
- name: name
in: path
description: Name of the recipient.
required: true
schema:
type: string
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- RecipientsService
description: Update a recipient.
operationId: UpdateRecipient
parameters:
- name: name
in: path
description: Name of the recipient.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateRecipientRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Recipient"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/schemas:
get:
tags:
- SchemasService
description: |-
Gets an array of schemas for a catalog in the metastore. If the caller is the metastore
admin or the owner of the parent catalog, all schemas for the catalog will be retrieved.
Otherwise, only schemas owned by the caller (or for which the caller has the USE_SCHEMA privilege)
will be retrieved. There is no guarantee of a specific ordering of the elements in the array.
operationId: ListSchemas
parameters:
- name: catalog_name
in: query
description: Name of parent catalog.
schema:
type: string
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
- name: include_browse
in: query
description: Whether to include schemas in the response for which the principal can only access selective metadata for
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListSchemasResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- SchemasService
description: |-
Creates a new schema for catalog in the Metatastore. The caller must be a metastore admin,
or have the CREATE_SCHEMA privilege in the parent catalog.
operationId: CreateSchema
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateSchema"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/SchemaInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/schemas/{full_name}:
get:
tags:
- SchemasService
description: |-
Gets the specified schema within the metastore.
The caller must be a metastore admin, the owner of the schema,
or a user that has the USE_SCHEMA privilege on the schema.
operationId: GetSchema
parameters:
- name: full_name
in: path
description: |-
Full name of schema.
Format: catalog_name.schema_name
required: true
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/SchemaInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- SchemasService
description: |-
Deletes the specified schema from the parent catalog. The caller must be the owner
of the schema or an owner of the parent catalog.
operationId: DeleteSchema
parameters:
- name: full_name
in: path
description: |-
Full name of schema to delete.
Format: catalog_name.schema_name
required: true
schema:
type: string
- name: force
in: query
description: Force deletion even if the schema is not empty.
schema:
type: boolean
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- SchemasService
description: |-
Updates a schema for a catalog. The caller must be the owner of the schema or a metastore admin.
If the caller is a metastore admin, only the owner field can be changed in the update.
If the name field must be updated, the caller must be a metastore admin or have the CREATE_SCHEMA
privilege on the parent catalog.
operationId: UpdateSchema
parameters:
- name: full_name
in: path
description: Full name of schema, in form of catalog_name.schema_name.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateSchemaRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/SchemaInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/shares:
get:
tags:
- SharesService
description: List shares.
operationId: ListShares
parameters:
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListSharesResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- SharesService
description: Create a new share.
operationId: CreateShare
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateShareRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Share"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/shares/{name}:
get:
tags:
- SharesService
description: Get a share by name.
operationId: GetShare
parameters:
- name: name
in: path
description: Name of the share.
required: true
schema:
type: string
- name: include_shared_data
in: query
description: Query for data to include in the share.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Share"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- SharesService
description: Deletes a share.
operationId: DeleteShare
parameters:
- name: name
in: path
description: Name of the share.
required: true
schema:
type: string
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- SharesService
description: Update a share.
operationId: UpdateShare
parameters:
- name: name
in: path
description: Name of the share.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateShareRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Share"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/shares/{name}/permissions:
get:
tags:
- SharesService
description: Gets the permissions for a data share from the metastore.
operationId: GetPermissions
parameters:
- name: name
in: path
description: Name of the share.
required: true
schema:
type: string
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/GetPermissionsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- SharesService
description: Updates the permissions for a data share in the metastore.
operationId: UpdatePermissions
parameters:
- name: name
in: path
description: Name of the share.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdatePermissionsRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/UpdatePermissionsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/staging-tables:
post:
tags:
- StagingTablesService
description: |-
Creates a new staging table, allocating an immutable table id and a storage
location under the parent schema/catalog managed storage root. The caller
must have the CREATE privilege on the parent schema.
operationId: CreateStagingTable
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateStagingTableRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/StagingTable"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/table-summaries:
get:
tags:
- TablesService
description: |-
Gets an array of summaries for tables for a schema and catalog within the metastore. The table summaries returned are either:
- summaries for tables (within the current metastore and parent catalog and schema), when the user is a metastore admin, or:
- summaries for tables and schemas (within the current metastore and parent catalog) for which the user has ownership or the
SELECT privilege on the table and ownership or USE_SCHEMA privilege on the schema, provided that the user also has ownership
or the USE_CATALOG privilege on the parent catalog.
There is no guarantee of a specific ordering of the elements in the array.
operationId: ListTableSummaries
parameters:
- name: catalog_name
in: query
description: Name of parent catalog for tables of interest.
schema:
type: string
- name: schema_name_pattern
in: query
description: A sql LIKE pattern (% and _) for schema names. All schemas will be returned if not set or empty.
schema:
type: string
- name: table_name_pattern
in: query
description: A sql LIKE pattern (% and _) for table names. All tables will be returned if not set or empty.
schema:
type: string
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
- name: include_manifest_capabilities
in: query
description: Whether to include a manifest containing capabilities the table has.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListTableSummariesResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/tables:
get:
tags:
- TablesService
description: |-
Gets an array of all tables for the current metastore under the parent catalog and schema.
The caller must be a metastore admin or an owner of (or have the SELECT privilege on) the table.
For 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. There is no guarantee of a
specific ordering of the elements in the array.
operationId: ListTables
parameters:
- name: catalog_name
in: query
description: Name of parent catalog for tables of interest.
schema:
type: string
- name: schema_name
in: query
description: Name of parent schema for tables of interest.
schema:
type: string
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
- name: include_delta_metadata
in: query
description: Whether delta metadata should be included in the response.
schema:
type: boolean
- name: omit_columns
in: query
description: Whether to omit the columns of the table from the response or not.
schema:
type: boolean
- name: omit_properties
in: query
description: Whether to omit the properties of the table from the response or not.
schema:
type: boolean
- name: omit_username
in: query
description: Whether to omit the username of the table (e.g. owner, updated_by, created_by) from the response or not.
schema:
type: boolean
- name: include_browse
in: query
description: Whether to include tables in the response for which the principal can only access selective metadata for
schema:
type: boolean
- name: include_manifest_capabilities
in: query
description: Whether to include a manifest containing capabilities the table has.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListTablesResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- TablesService
description: Create a table
operationId: CreateTable
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateTableRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TableInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/tables/{full_name}:
get:
tags:
- TablesService
description: Get a table
operationId: GetTable
parameters:
- name: full_name
in: path
description: Full name of the table.
required: true
schema:
type: string
- name: include_delta_metadata
in: query
description: Whether delta metadata should be included in the response.
schema:
type: boolean
- name: include_browse
in: query
description: Whether to include tables in the response for which the principal can only access selective metadata for
schema:
type: boolean
- name: include_manifest_capabilities
in: query
description: Whether to include a manifest containing capabilities the table has.
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TableInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- TablesService
description: Delete a table
operationId: DeleteTable
parameters:
- name: full_name
in: path
description: Full name of the table.
required: true
schema:
type: string
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/tables/{full_name}/exists:
get:
tags:
- TablesService
description: Get boolean reflecting if table exists
operationId: GetTableExists
parameters:
- name: full_name
in: path
description: Full name of the table.
required: true
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/GetTableExistsResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/tag-policies:
get:
tags:
- TagPoliciesService
description: |-
List tag policies
Gets an array of tag policies. There is no guarantee of a specific ordering
of the elements in the array.
operationId: ListTagPolicies
parameters:
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListTagPoliciesResponse"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- TagPoliciesService
description: |-
Create a new tag policy
Creates a new governed tag definition.
operationId: CreateTagPolicy
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateTagPolicyRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TagPolicy"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/tag-policies/{tag_key}:
get:
tags:
- TagPoliciesService
description: |-
Get a tag policy
Gets the governed tag definition for the specified tag key.
operationId: GetTagPolicy
parameters:
- name: tag_key
in: path
description: The key of the governed tag.
required: true
schema:
type: string
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TagPolicy"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- TagPoliciesService
description: |-
Delete a tag policy
Deletes the governed tag definition that matches the supplied tag key.
operationId: DeleteTagPolicy
parameters:
- name: tag_key
in: path
description: The key of the governed tag to delete.
required: true
schema:
type: string
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- TagPoliciesService
description: |-
Update a tag policy
Updates the governed tag definition that matches the supplied tag key.
operationId: UpdateTagPolicy
parameters:
- name: tag_key
in: path
description: The key of the governed tag to update.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateTagPolicyRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TagPolicy"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/temporary-model-version-credentials:
post:
tags:
- TemporaryCredentialsService
description: |-
Generate a new set of credentials for a model version.
The metastore must have the `external_access_enabled` flag set to true
(default false). The caller must have the `EXTERNAL_USE_SCHEMA`
privilege on the parent schema (granted by a catalog owner).
operationId: GenerateTemporaryModelVersionCredentials
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/GenerateTemporaryModelVersionCredentialsRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TemporaryCredential"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/temporary-path-credentials:
post:
tags:
- TemporaryCredentialsService
description: Generate a new set of credentials for a path.
operationId: GenerateTemporaryPathCredentials
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/GenerateTemporaryPathCredentialsRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TemporaryCredential"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/temporary-table-credentials:
post:
tags:
- TemporaryCredentialsService
description: Generate a new set of credentials for a table.
operationId: GenerateTemporaryTableCredentials
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/GenerateTemporaryTableCredentialsRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TemporaryCredential"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/temporary-volume-credentials:
post:
tags:
- TemporaryCredentialsService
description: |-
Generate a new set of credentials for a volume.
The metastore must have the `external_access_enabled` flag set to true
(default false). The caller must have the `EXTERNAL_USE_SCHEMA`
privilege on the parent schema (granted by a catalog owner).
operationId: GenerateTemporaryVolumeCredentials
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/GenerateTemporaryVolumeCredentialsRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TemporaryCredential"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/volumes:
get:
tags:
- VolumesService
description: Lists volumes.
operationId: ListVolumes
parameters:
- name: catalog_name
in: query
description: The identifier of the catalog
schema:
type: string
- name: schema_name
in: query
description: The identifier of the schema
schema:
type: string
- name: max_results
in: query
description: The maximum number of results per page that should be returned.
schema:
type: integer
format: int32
- name: page_token
in: query
description: Opaque pagination token to go to next page based on previous query.
schema:
type: string
- name: include_browse
in: query
description: Whether to include schemas in the response for which the principal can only access selective metadata for
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ListVolumesResponseContent"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
post:
tags:
- VolumesService
operationId: CreateVolume
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/CreateVolumeRequestContent"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/VolumeInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
/volumes/{name}:
get:
tags:
- VolumesService
operationId: GetVolume
parameters:
- name: name
in: path
description: The three-level (fully qualified) name of the volume
required: true
schema:
type: string
- name: include_browse
in: query
description: Whether to include schemas in the response for which the principal can only access selective metadata for
schema:
type: boolean
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/VolumeInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
delete:
tags:
- VolumesService
operationId: DeleteVolume
parameters:
- name: name
in: path
description: The three-level (fully qualified) name of the volume
required: true
schema:
type: string
responses:
"200":
description: OK
content: {}
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
patch:
tags:
- VolumesService
operationId: UpdateVolume
parameters:
- name: name
in: path
description: The three-level (fully qualified) name of the volume
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/UpdateVolumeRequest"
required: true
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/VolumeInfo"
default:
description: Default error response
content:
application/json:
schema:
$ref: "#/components/schemas/Status"
components:
schemas:
Agent:
required:
- name
- catalog_name
- schema_name
- full_name
- agent_id
- invocation_protocol
- endpoint
type: object
properties:
name:
type: string
description: Name of the agent, relative to parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
catalog_name:
type: string
description: Name of parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: Name of parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
full_name:
readOnly: true
type: string
description: The three-level (fully qualified) name of the agent.
pattern: ^[a-z][0-9a-z_]*[0-9a-z]\.[a-z][0-9a-z_]*[0-9a-z]\.[a-z][0-9a-z_]*[0-9a-z]$
agent_id:
readOnly: true
type: string
description: The unique identifier of the agent.
invocation_protocol:
enum:
- INVOCATION_PROTOCOL_UNSPECIFIED
- MCP
- A2A
- OPENAI
- ANTHROPIC
- REST
type: string
description: The protocol a recipient uses to invoke the agent.
format: enum
title: Invocation Protocol
endpoint:
type: string
description: The agent's invocation endpoint URL.
pattern: ^(?:(?:[a-zA-Z][a-zA-Z\d+\-.]*):)?(?://(?:[A-Za-z0-9\-\.]+(?::\d+)?))?(/[^\?#]*)?(?:\?([^\#]*))?(?:\#(.*))?$
description:
type: string
description: |-
An LLM-readable description of what the agent does and the inputs it
expects.
maxLength: 65536
capabilities:
type: array
items:
type: string
description: |-
Capability identifiers advertised by the agent (e.g. `sql_query`,
`document_search`, `code_execution`).
input_schema:
type: string
description: |-
A JSON Schema (encoded as a JSON string) describing the agent's expected
input payload. Kept as an opaque string so the schema can evolve without
changing this message.
owner:
readOnly: true
type: string
description: Username of current owner of the agent.
comment:
type: string
description: User-provided free-form text description.
minLength: 1
maxLength: 65536
created_at:
readOnly: true
type: string
description: Time at which this agent was created, in epoch milliseconds.
minimum: 0
exclusiveMinimum: true
created_by:
readOnly: true
type: string
description: Username of agent creator.
updated_at:
readOnly: true
type: string
description: Time at which this agent was last updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of user who last modified the agent.
metastore_id:
readOnly: true
type: string
description: The unique identifier of the metastore.
description: An agent registered in Unity Catalog.
additionalProperties: false
title: Agent
AgentSkill:
required:
- name
- catalog_name
- schema_name
- full_name
- storage_location
- agent_skill_id
- agent_skill_type
type: object
properties:
name:
type: string
description: |-
Per the Agent Skills spec a skill name is lowercase letters, numbers, and
hyphens, but Unity Catalog object names disallow hyphens, so UC stores the
catalog object name with underscores; the spec-shaped name lives in the
skill's own SKILL.md.
minLength: 3
maxLength: 64
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
title: Name of the agent skill, relative to parent schema.
catalog_name:
type: string
description: Name of parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: Name of parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
full_name:
readOnly: true
type: string
description: The three-level (fully qualified) name of the agent skill.
pattern: ^[a-z][0-9a-z_]*[0-9a-z]\.[a-z][0-9a-z_]*[0-9a-z]\.[a-z][0-9a-z_]*[0-9a-z]$
storage_location:
type: string
description: |-
The storage location of the skill's directory (the root that holds
`SKILL.md`).
pattern: ^(?:(?:[a-zA-Z][a-zA-Z\d+\-.]*):)?(?://(?:[A-Za-z0-9\-\.]+(?::\d+)?))?(/[^\?#]*)?(?:\?([^\#]*))?(?:\#(.*))?$
agent_skill_id:
readOnly: true
type: string
description: The unique identifier of the agent skill.
agent_skill_type:
enum:
- AGENT_SKILL_TYPE_UNSPECIFIED
- EXTERNAL
- MANAGED
type: string
description: How the storage location is provisioned (external or managed).
format: enum
title: Agent Skill Type
description:
type: string
description: Mirrors the Agent Skills spec `description` frontmatter field.
maxLength: 1024
title: A human-readable description of what the skill does and when to use it.
license:
type: string
description: SPDX license identifier or free-form license text for the skill.
allowed_tools:
type: array
items:
type: string
description: The tools the skill is permitted to use, as declared in its SKILL.md.
metadata:
type: object
additionalProperties:
type: string
description: Arbitrary additional metadata declared by the skill.
owner:
readOnly: true
type: string
description: Username of current owner of the agent skill.
comment:
type: string
description: User-provided free-form text description.
minLength: 1
maxLength: 65536
created_at:
readOnly: true
type: string
description: Time at which this agent skill was created, in epoch milliseconds.
minimum: 0
exclusiveMinimum: true
created_by:
readOnly: true
type: string
description: Username of agent skill creator.
updated_at:
readOnly: true
type: string
description: Time at which this agent skill was last updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of user who last modified the agent skill.
metastore_id:
readOnly: true
type: string
description: The unique identifier of the metastore.
description: An agent skill registered in Unity Catalog.
additionalProperties: false
title: Agent Skill
AwsIamRoleConfig:
required:
- role_arn
type: object
properties:
role_arn:
type: string
description: The Amazon Resource Name (ARN) of the AWS IAM role used to vend temporary credentials.
region:
type: string
description: The AWS region where STS calls are made. Defaults to "us-east-1" if absent.
access_key_id:
type: string
description: |-
When set together with secret_access_key, these static credentials are used
as the base identity to call STS:AssumeRole. When omitted, the server falls
back to ambient credentials (instance profile, ECS task role, WebIdentity, etc.).
title: AWS access key ID used to authorize the STS AssumeRole call.
secret_access_key:
type: string
description: AWS secret access key paired with access_key_id.
session_token:
type: string
description: |-
Optional AWS session token for temporary base credentials (e.g. when the
caller itself holds STS-vended credentials as the base identity).
description: |-
This is an internal configuration type, not exposed in the public API response.
It stores the static credentials (or ambient credential fallback) used to
authorize the STS:AssumeRole call when vending temporary credentials.
additionalProperties: false
title: The AWS IAM role configuration used server-side to call STS AssumeRole.
AwsTemporaryCredentials:
type: object
properties:
access_key_id:
type: string
description: The access key ID that identifies the temporary credentials.
access_point:
type: string
description: The Amazon Resource Name (ARN) of the S3 access point for temporary credentials related the external location.
secret_access_key:
type: string
description: The secret access key that can be used to sign AWS API requests.
session_token:
type: string
description: The token that users must pass to AWS API to use the temporary credentials.
additionalProperties: false
required:
- access_key_id
- access_point
- secret_access_key
- session_token
title: Aws Temporary Credentials
AzureAad:
type: object
properties:
aad_token:
type: string
description: Opaque token that contains claims that you can use in Azure Active Directory to access cloud services.
additionalProperties: false
required:
- aad_token
title: Azure Aad
AzureManagedIdentity:
required:
- access_connector_id
type: object
properties:
access_connector_id:
type: string
description: |-
The Azure resource ID of the Azure Databricks Access Connector.
Use the format /subscriptions/{guid}/resourceGroups/{rg-name}/providers/
Microsoft.Databricks/accessConnectors/{connector-name}.
credential_id:
type: string
description: The Databricks internal ID that represents this managed identity.
managed_identity_id:
type: string
description: |-
The Azure resource ID of the managed identity.
Use the format /subscriptions/{guid}/resourceGroups/{rg-name}/providers/
Microsoft.ManagedIdentity/userAssignedIdentities/{identity-name}.
This is only available for user-assigned identities. For system-assigned
identities, the access_connector_id is used to identify the identity.
If this field is not provided, then the system-assigned identity of the
Access Connector is used.
description: The Azure managed identity configuration.
additionalProperties: false
title: Azure Managed Identity
AzureServicePrincipal:
required:
- directory_id
- application_id
type: object
properties:
directory_id:
type: string
description: The directory ID corresponding to the Azure Active Directory (AAD) tenant of the application.
application_id:
type: string
description: The application ID of the application registration within the referenced AAD tenant.
client_secret:
type: string
description: The client secret generated for the above app ID in AAD.
federated_token_file:
type: string
description: Specifically useful for workload identity federation.
title: Location of the file containing a federated token.
description: The Azure service principal configuration.
additionalProperties: false
title: Azure Service Principal
AzureStorageKey:
required:
- account_name
- account_key
type: object
properties:
account_name:
type: string
description: The name of the storage account.
account_key:
type: string
description: The account key of the storage account.
description: The Azure storage key configuration.
additionalProperties: false
title: Azure Storage Key
AzureUserDelegationSas:
type: object
properties:
sas_token:
type: string
description: The signed URI (SAS Token) used to access blob services for a given path
additionalProperties: false
required:
- sas_token
title: Azure User Delegation Sas
CatalogInfo:
required:
- name
type: object
properties:
name:
type: string
description: Name of catalog.
id:
readOnly: true
type: string
description: Unique identifier for the catalog.
owner:
type: string
description: Username of current owner of catalog.
comment:
type: string
description: User-provided free-form text description.
properties:
type: object
additionalProperties:
type: string
description: A map of key-value properties attached to the securable.
storage_root:
type: string
description: Storage root URL for managed tables within catalog.
provider_name:
type: string
description: A Delta Sharing catalog is a catalog that is based on a Delta share on a remote sharing server.
title: The name of delta sharing provider.
share_name:
type: string
description: The name of the share under the share provider.
catalog_type:
enum:
- CATALOG_TYPE_UNSPECIFIED
- MANAGED_CATALOG
- DELTASHARING_CATALOG
- SYSTEM_CATALOG
type: string
description: The type of the catalog.
format: enum
title: Catalog Type
storage_location:
readOnly: true
type: string
description: |-
A unique path under `storage_root`, used as the managed-storage parent for
managed tables/volumes whose schema has no storage location of its own.
Absent when the catalog has no `storage_root`.
Example: `s3://bucket/ucroot/__unitystorage/catalogs/{catalog_id}`.
title: Storage location URL (full path) for managed storage of the catalog.
created_at:
readOnly: true
type: string
description: Time at which this catalog was created, in epoch milliseconds.
minimum: 0
exclusiveMinimum: true
created_by:
readOnly: true
type: string
description: Username of catalog creator.
updated_at:
readOnly: true
type: string
description: Time at which this catalog was last updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of user who last modified catalog.
browse_only:
readOnly: true
type: boolean
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.
description: A catalog is a root-level namespace that contains schemas.
additionalProperties: false
title: Catalog
ColumnInfo:
required:
- name
- type_text
- type_json
- type_name
type: object
properties:
name:
type: string
description: Name of the column
type_text:
type: string
description: Full data type specification as SQL/catalogString text.
type_json:
type: string
description: Full data type specification, JSON-serialized.
position:
type: integer
description: Ordinal position of column (starting at position 0).
format: int32
minimum: -2147483648
maximum: 2147483647
type_name:
enum:
- COLUMN_TYPE_NAME_UNSPECIFIED
- 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
type: string
description: Data type name.
format: enum
title: Column Type Name
type_precision:
type: integer
description: Digits of precision; required for DecimalTypes.
format: int32
minimum: -2147483648
maximum: 2147483647
type_scale:
type: integer
description: Digits to right of decimal; Required for DecimalTypes.
format: int32
minimum: -2147483648
maximum: 2147483647
type_interval_type:
type: string
description: Format of IntervalType.
comment:
type: string
description: User-provided free-form text description.
nullable:
type: boolean
description: Whether field may be Null.
partition_index:
type: integer
description: Partition index for column.
format: int32
minimum: -2147483648
maximum: 2147483647
column_id:
readOnly: true
type: string
description: a unique id for the column
additionalProperties: false
title: Column
CreateAgentRequest:
required:
- catalog_name
- schema_name
- name
- invocation_protocol
- endpoint
type: object
properties:
catalog_name:
type: string
description: The identifier of the catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: The identifier of the schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
name:
type: string
description: The identifier of the agent.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
invocation_protocol:
enum:
- MCP
- A2A
- OPENAI
- ANTHROPIC
- REST
type: string
description: The protocol a recipient uses to invoke the agent.
format: enum
title: Invocation Protocol
endpoint:
type: string
description: The agent's invocation endpoint URL.
pattern: ^(?:(?:[a-zA-Z][a-zA-Z\d+\-.]*):)?(?://(?:[A-Za-z0-9\-\.]+(?::\d+)?))?(/[^\?#]*)?(?:\?([^\#]*))?(?:\#(.*))?$
description:
type: string
description: An LLM-readable description of what the agent does and the inputs it expects.
maxLength: 65536
capabilities:
type: array
items:
type: string
description: Capability identifiers advertised by the agent.
input_schema:
type: string
description: A JSON Schema (encoded as a JSON string) describing the expected input.
comment:
type: string
description: User-provided free-form text description.
minLength: 1
maxLength: 65536
description: Create a new agent.
additionalProperties: false
title: Create Agent Request
CreateAgentSkillRequest:
required:
- catalog_name
- schema_name
- name
- agent_skill_type
type: object
properties:
catalog_name:
type: string
description: The identifier of the catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: The identifier of the schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
name:
type: string
description: The identifier of the agent skill.
minLength: 3
maxLength: 64
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
agent_skill_type:
enum:
- EXTERNAL
- MANAGED
type: string
description: How the storage location is provisioned (external or managed).
format: enum
title: Agent Skill Type
storage_location:
type: string
description: Required for EXTERNAL skills; ignored (server-derived) for MANAGED skills.
title: The storage location of the skill directory on the cloud.
description:
type: string
description: A human-readable description of what the skill does and when to use it.
maxLength: 1024
license:
type: string
description: SPDX license identifier or free-form license text for the skill.
allowed_tools:
type: array
items:
type: string
description: The tools the skill is permitted to use.
metadata:
type: object
additionalProperties:
type: string
description: Arbitrary additional metadata declared by the skill.
comment:
type: string
description: User-provided free-form text description.
minLength: 1
maxLength: 65536
description: Create a new agent skill.
additionalProperties: false
title: Create Agent Skill Request
CreateCatalog:
required:
- name
type: object
properties:
name:
type: string
description: Name of catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
comment:
type: string
description: User-provided free-form text description.
properties:
type: object
additionalProperties:
type: string
description: A map of key-value properties attached to the securable.
storage_root:
type: string
description: Storage root URL for managed tables within catalog.
pattern: ^(?:(?:[a-zA-Z][a-zA-Z\d+\-.]*):)?(?://(?:[A-Za-z0-9\-\.]+(?::\d+)?))?(/[^\?#]*)?(?:\?([^\#]*))?(?:\#(.*))?$
provider_name:
type: string
description: A Delta Sharing catalog is a catalog that is based on a Delta share on a remote sharing server.
minLength: 3
pattern: ^[a-z][0-9a-z-_]*[0-9a-z]$
title: The name of delta sharing provider.
share_name:
type: string
description: The name of the share under the share provider.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
description: Create a new catalog
additionalProperties: false
title: Create Catalog Request
CreateCredentialRequest:
required:
- name
- purpose
type: object
properties:
name:
type: string
description: The credential name. The name must be unique among storage and service credentials within the metastore.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
purpose:
enum:
- STORAGE
- SERVICE
type: string
description: Indicates the purpose of the credential.
format: enum
title: Purpose
comment:
type: string
description: Comment associated with the credential.
read_only:
type: boolean
description: Whether the credential is usable only for read operations. Only applicable when purpose is STORAGE.
skip_validation:
type: boolean
description: Optional. Supplying true to this argument skips validation of the created set of credentials.
azure_service_principal:
allOf:
- $ref: "#/components/schemas/AzureServicePrincipal"
description: The Azure service principal configuration.
additionalProperties: false
required:
- directory_id
- application_id
title: Azure Service Principal
azure_managed_identity:
allOf:
- $ref: "#/components/schemas/AzureManagedIdentity"
description: The Azure managed identity configuration.
additionalProperties: false
required:
- access_connector_id
title: Azure Managed Identity
azure_storage_key:
allOf:
- $ref: "#/components/schemas/AzureStorageKey"
description: The Azure storage key configuration.
additionalProperties: false
required:
- account_name
- account_key
title: Azure Storage Key
aws_iam_role:
allOf:
- $ref: "#/components/schemas/AwsIamRoleConfig"
description: |-
This is an internal configuration type, not exposed in the public API response.
It stores the static credentials (or ambient credential fallback) used to
authorize the STS:AssumeRole call when vending temporary credentials.
additionalProperties: false
required:
- role_arn
title: The AWS IAM role configuration used server-side to call STS AssumeRole.
databricks_gcp_service_account:
allOf:
- $ref: "#/components/schemas/DatabricksGcpServiceAccount"
description: The Databricks managed GCP service account configuration.
additionalProperties: false
title: Databricks Gcp Service Account
description: Create a new credential.
additionalProperties: false
title: Create Credential Request
CreateEntityTagAssignmentRequest:
required:
- tag_assignment
type: object
properties:
tag_assignment:
allOf:
- $ref: "#/components/schemas/EntityTagAssignment"
description: |-
Unlike a TagPolicy (a governed-tag *definition*), an assignment is the application
of a tag to a specific securable. It has no identifier of its own — its identity is
the composite of (entity_type, entity_name, tag_key). It is intentionally NOT a
`google.api.resource`: assignments are stored as associations between the entity and
its tag, not as standalone objects.
additionalProperties: false
required:
- entity_type
- entity_name
- tag_key
title: The assignment of a tag to a Unity Catalog entity.
description: Create an entity tag assignment
additionalProperties: false
title: Create Entity Tag Assignment Request
CreateExternalLocation:
required:
- name
- url
- credential_name
type: object
properties:
name:
type: string
description: Name of external location.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
url:
type: string
description: Path URL of the external location.
pattern: ^(?:(?:[a-zA-Z][a-zA-Z\d+\-.]*):)?(?://(?:[A-Za-z0-9\-\.]+(?::\d+)?))?(/[^\?#]*)?(?:\?([^\#]*))?(?:\#(.*))?$
credential_name:
type: string
description: Name of the storage credential used with this location.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
read_only:
type: boolean
description: Indicates whether the external location is read-only.
comment:
type: string
description: User-provided free-form text description.
skip_validation:
type: boolean
description: Skips validation of the storage credential associated with the external location.
description: Create a new external location
additionalProperties: false
title: Create External Location Request
CreateFunction:
required:
- name
- catalog_name
- schema_name
- data_type
- full_data_type
- parameter_style
- is_deterministic
- sql_data_access
- is_null_call
- security_type
- routine_body
type: object
properties:
name:
type: string
description: Name of function, relative to parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
catalog_name:
type: string
description: Name of parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: Name of parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
data_type:
type: string
description: Full data type specification of the return type of the function.
full_data_type:
type: string
description: Full data type specification as SQL/catalogString text.
input_params:
allOf:
- $ref: "#/components/schemas/FunctionParameterInfos"
description: A collection of function parameters.
additionalProperties: false
title: Function Parameter Infos
parameter_style:
enum:
- PARAMETER_STYLE_UNSPECIFIED
- S
type: string
description: The parameter-passing style.
format: enum
title: Parameter Style
is_deterministic:
type: boolean
description: Indicates whether the function is deterministic.
sql_data_access:
enum:
- SQL_DATA_ACCESS_UNSPECIFIED
- CONTAINS_SQL
- READS_SQL_DATA
- NO_SQL
type: string
description: SQL data access information.
format: enum
title: Sql Data Access
is_null_call:
type: boolean
description: Indicates whether the function is null-calling.
security_type:
enum:
- SECURITY_TYPE_UNSPECIFIED
- DEFINER
type: string
description: The security type of the function.
format: enum
title: Security Type
routine_body:
enum:
- ROUTINE_BODY_UNSPECIFIED
- SQL
- EXTERNAL
type: string
description: The routine body.
format: enum
title: Routine Body
routine_definition:
type: string
description: Function body.
routine_body_language:
type: string
description: The language of the function routine body.
comment:
type: string
description: User-provided free-form text description.
properties:
type: object
additionalProperties:
type: string
description: A map of key-value properties attached to the securable.
description: |-
Wrapped in the `function_info` envelope of a `CreateFunctionRequest`, matching
the Unity Catalog `POST /functions` wire contract.
additionalProperties: false
title: The payload for creating a new function.
CreateModelVersionRequest:
required:
- model_name
- catalog_name
- schema_name
- source
type: object
properties:
model_name:
type: string
description: Name of the parent registered model, relative to parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
catalog_name:
type: string
description: Name of parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: Name of parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
source:
type: string
description: |-
URI indicating the location of the source artifacts (e.g. an MLflow run
artifact path) used to create the model version.
run_id:
type: string
description: The run id used by the ML package that generated this model.
comment:
type: string
description: User-provided free-form text description.
description: Create a new model version.
additionalProperties: false
title: Create Model Version Request
CreateProviderRequest:
required:
- name
- authentication_type
type: object
properties:
name:
type: string
description: Name of the provider.
pattern: ^[a-z][0-9a-z._]*[0-9a-z]$
authentication_type:
enum:
- TOKEN
- OAUTH_CLIENT_CREDENTIALS
type: string
description: The delta sharing authentication type.
format: enum
title: Provider Authentication Type
owner:
type: string
description: Username of the provider owner.
comment:
type: string
description: Description about the provider.
recipient_profile_str:
type: string
description: |-
The recipient profile (credential file contents) used to connect to the
sharing server, required for TOKEN authentication.
properties:
type: object
additionalProperties:
type: string
description: Provider properties as map of string key-value pairs.
description: Creates a new provider
additionalProperties: false
title: Create Provider Request
CreateRecipientRequest:
required:
- name
- authentication_type
- owner
type: object
properties:
name:
type: string
description: Name of the recipient.
pattern: ^[a-z][0-9a-z._]*[0-9a-z]$
authentication_type:
enum:
- TOKEN
- OAUTH_CLIENT_CREDENTIALS
type: string
description: The delta sharing authentication type.
format: enum
title: Authentication Type
owner:
type: string
description: Username of the recipient owner.
comment:
type: string
description: Description about the recipient.
properties:
type: object
additionalProperties:
type: string
description: |-
When provided in update request, the specified properties will override the existing properties.
To add and remove properties, one would need to perform a read-modify-write.
title: Recipient properties as map of string key-value pairs.
expiration_time:
type: string
description: Expiration timestamp of the token, in epoch milliseconds.
description: Creates a new recipient
additionalProperties: false
title: Create Recipient Request
CreateRegisteredModel:
required:
- name
- catalog_name
- schema_name
type: object
properties:
name:
type: string
description: Name of registered model, relative to parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
catalog_name:
type: string
description: Name of parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: Name of parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
comment:
type: string
description: User-provided free-form text description.
description: Create a new registered model.
additionalProperties: false
title: Create Registered Model Request
CreateSchema:
required:
- name
- catalog_name
type: object
properties:
name:
type: string
description: Name of schema, relative to parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
catalog_name:
type: string
description: Name of parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
comment:
type: string
description: User-provided free-form text description.
properties:
type: object
additionalProperties:
type: string
description: A map of key-value properties attached to the securable.
storage_root:
type: string
description: |-
If not set, managed securables under this schema fall back to the parent
catalog's storage location. Example: `s3://bucket/ucroot`.
title: Storage root URL for managed storage location of the schema.
description: Create a new Schema
additionalProperties: false
title: Create Schema Request
CreateShareRequest:
required:
- name
type: object
properties:
name:
type: string
description: Name of the share.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
comment:
type: string
description: User-provided free-form text description.
description: |-
Data objects can be added after creation with update.
The caller must be a metastore admin or have the CREATE_SHARE privilege on the metastore.
additionalProperties: false
title: Creates a new share for data objects.
CreateStagingTableRequest:
required:
- name
- catalog_name
- schema_name
type: object
properties:
name:
type: string
description: Name of the staging table, relative to the parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
catalog_name:
type: string
description: Name of the parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: Name of the parent schema relative to its parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
description: Create a new staging table.
additionalProperties: false
title: Create Staging Table Request
CreateTableRequest:
required:
- name
- schema_name
- catalog_name
- table_type
- data_source_format
type: object
properties:
name:
type: string
description: Name of table, relative to parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: Name of parent schema relative to its parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
catalog_name:
type: string
description: Name of parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
table_type:
enum:
- MANAGED
- EXTERNAL
- VIEW
- MATERIALIZED_VIEW
- STREAMING_TABLE
- METRIC_VIEW
type: string
format: enum
title: Table Type
data_source_format:
enum:
- DELTA
- ICEBERG
- HUDI
- PARQUET
- CSV
- JSON
- ORC
- AVRO
- TEXT
- UNITY_CATALOG
- DELTASHARING
type: string
format: enum
title: Data Source Format
columns:
type: array
items:
$ref: "#/components/schemas/ColumnInfo"
additionalProperties: false
required:
- name
- type_text
- type_json
- type_name
title: Column
description: The array of Column definitions of the table's columns.
storage_location:
type: string
description: Storage root URL for external table.
comment:
type: string
description: User-provided free-form text description.
properties:
type: object
additionalProperties:
type: string
description: A map of key-value properties attached to the securable.
view_definition:
type: string
description: |-
Definition text for view-like table types (VIEW, MATERIALIZED_VIEW,
STREAMING_TABLE, METRIC_VIEW). The format depends on the table type:
SQL for views, YAML for metric views. Required for METRIC_VIEW.
view_dependencies:
allOf:
- $ref: "#/components/schemas/DependencyList"
description: A list of dependencies referenced by a view-like table.
additionalProperties: false
title: Dependency List
description: "WARNING: this API is experimental and subject to change."
additionalProperties: false
title: Create a table
CreateTagPolicyRequest:
required:
- tag_policy
type: object
properties:
tag_policy:
allOf:
- $ref: "#/components/schemas/TagPolicy"
description: |-
A tag policy defines a tag key together with the rules that govern how it can
be used, including the optional set of allowed values. Assigning a governed
tag to an entity is done through the Entity Tag Assignments API.
additionalProperties: false
required:
- tag_key
title: A governed tag definition (tag policy).
description: Create a new tag policy
additionalProperties: false
title: Create Tag Policy Request
CreateVolumeRequestContent:
required:
- catalog_name
- schema_name
- name
- volume_type
type: object
properties:
catalog_name:
type: string
description: The identifier of the catalog
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: The identifier of the schema
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
name:
type: string
description: The identifier of the volume
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
volume_type:
enum:
- EXTERNAL
- MANAGED
type: string
description: |-
An external volume is located in the specified external location.
A managed volume is located in the default location which is specified
by the parent schema, or the parent catalog, or the Metastore.
format: enum
title: Volume Type
storage_location:
type: string
description: The storage location on the cloud
comment:
type: string
description: The storage location on the cloud
minLength: 1
maxLength: 65536
description: Create a new Volume
additionalProperties: false
title: Create Volume Request
CredentialInfo:
required:
- name
- purpose
- read_only
- used_for_managed_storage
- full_name
type: object
properties:
name:
type: string
description: The name must be unique among storage and service credentials within the metastore.
title: The credential name.
id:
readOnly: true
type: string
description: The unique identifier of the credential.
purpose:
enum:
- PURPOSE_UNSPECIFIED
- STORAGE
- SERVICE
type: string
description: Indicates the purpose of the credential.
format: enum
title: Purpose
read_only:
type: boolean
description: Only applicable when purpose is STORAGE.
title: Whether the credential is usable only for read operations.
comment:
type: string
description: Comment associated with the credential.
owner:
type: string
description: Username of current owner of credential.
created_at:
readOnly: true
type: string
description: Time at which this credential was created, in epoch milliseconds.
created_by:
readOnly: true
type: string
description: Username of credential creator.
updated_at:
readOnly: true
type: string
description: Time at which this credential was last modified, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of user who last modified the credential.
used_for_managed_storage:
readOnly: true
type: boolean
description: Only applicable when purpose is STORAGE.
title: Whether this credential is the current metastore's root storage credential.
full_name:
readOnly: true
type: string
description: The full name of the credential.
azure_service_principal:
allOf:
- $ref: "#/components/schemas/AzureServicePrincipal"
description: The Azure service principal configuration.
additionalProperties: false
required:
- directory_id
- application_id
title: Azure Service Principal
azure_managed_identity:
allOf:
- $ref: "#/components/schemas/AzureManagedIdentity"
description: The Azure managed identity configuration.
additionalProperties: false
required:
- access_connector_id
title: Azure Managed Identity
azure_storage_key:
allOf:
- $ref: "#/components/schemas/AzureStorageKey"
description: The Azure storage key configuration.
additionalProperties: false
required:
- account_name
- account_key
title: Azure Storage Key
aws_iam_role:
allOf:
- $ref: "#/components/schemas/AwsIamRoleConfig"
description: |-
This is an internal configuration type, not exposed in the public API response.
It stores the static credentials (or ambient credential fallback) used to
authorize the STS:AssumeRole call when vending temporary credentials.
additionalProperties: false
required:
- role_arn
title: The AWS IAM role configuration used server-side to call STS AssumeRole.
databricks_gcp_service_account:
allOf:
- $ref: "#/components/schemas/DatabricksGcpServiceAccount"
description: The Databricks managed GCP service account configuration.
additionalProperties: false
title: Databricks Gcp Service Account
description: A credential used to access external data sources or services.
additionalProperties: false
title: Credential
DataObject:
required:
- name
- data_object_type
type: object
properties:
name:
type: string
description: For example, a table's fully qualified name is in the format of <catalog>.<schema>.<table>,
title: A fully qualified name that uniquely identifies a data object.
data_object_type:
enum:
- DATA_OBJECT_TYPE_UNSPECIFIED
- TABLE
- SCHEMA
- VOLUME
- AGENT_SKILL
type: string
description: Type of the data object.
format: enum
title: Data Object Type
added_at:
readOnly: true
type: string
description: The time when this data object is added to the share, in epoch milliseconds.
added_by:
readOnly: true
type: string
description: Username of the sharer.
comment:
type: string
description: A user-provided comment when adding the data object to the share.
shared_as:
type: string
description: |-
If this new name is not provided, the object's original name will be used as the shared_as name.
The shared_as name must be unique within a share.
For tables, the new name must follow the format of <schema>.<table>.
title: A user-provided new name for the data object within the share.
partitions:
type: array
items:
type: string
description: Array of partitions for the shared data.
enable_cdf:
type: boolean
description: Whether to enable cdf or indicate if cdf is enabled on the shared object.
history_data_sharing_status:
enum:
- DISABLED
- ENABLED
type: string
description: Whether to enable or disable sharing of data history. If not specified, the default is DISABLED.
format: enum
title: History Status
start_version:
type: string
description: |-
This allows data providers to control the lowest object version that is accessible by clients.
If specified, clients can query snapshots or changes for versions >= start_version.
If not specified, clients can only query starting from the version of the object at the time it was added to the share.
NOTE: The start_version should be <= the current version of the object.
title: The start version associated with the object.
additionalProperties: false
title: Data Object
DataObjectUpdate:
required:
- action
type: object
properties:
action:
enum:
- ACTION_UNSPECIFIED
- ADD
- REMOVE
- UPDATE
type: string
description: Name of the share.
format: enum
title: Action
data_object:
allOf:
- $ref: "#/components/schemas/DataObject"
description: User-provided free-form text description.
additionalProperties: false
required:
- name
- data_object_type
title: Data Object
description: Data object update.
additionalProperties: false
title: Data Object Update
DatabricksGcpServiceAccount:
type: object
properties:
credential_id:
type: string
description: The Databricks internal ID that represents this managed identity.
email:
type: string
description: The email of the service account.
private_key_id:
type: string
description: The ID that represents the private key for this Service Account.
description: The Databricks managed GCP service account configuration.
additionalProperties: false
title: Databricks Gcp Service Account
Dependency:
type: object
properties:
table:
$ref: "#/components/schemas/TableDependency"
additionalProperties: false
required:
- table_full_name
description: A table that a SQL object (such as a view or metric view) depends on.
title: Table Dependency
function:
$ref: "#/components/schemas/FunctionDependency"
additionalProperties: false
required:
- function_full_name
description: A function that a SQL object (such as a view or metric view) depends on.
title: Function Dependency
description: A dependency of a SQL object. Exactly one of the fields must be set.
additionalProperties: false
title: Dependency
DependencyList:
type: object
properties:
dependencies:
type: array
items:
$ref: "#/components/schemas/Dependency"
additionalProperties: false
description: A dependency of a SQL object. Exactly one of the fields must be set.
title: Dependency
description: Array of dependencies.
description: A list of dependencies referenced by a view-like table.
additionalProperties: false
title: Dependency List
EntityTagAssignment:
required:
- entity_type
- entity_name
- tag_key
type: object
properties:
entity_type:
type: string
description: "Supported values: catalogs, schemas, tables, columns, volumes."
minLength: 1
pattern: ^(catalogs|schemas|tables|columns|volumes)$
title: The type of the entity to which the tag is assigned.
entity_name:
type: string
description: The fully qualified name of the entity to which the tag is assigned.
minLength: 1
tag_key:
type: string
description: The key of the tag.
minLength: 1
tag_value:
type: string
description: The value of the tag.
description: |-
Unlike a TagPolicy (a governed-tag *definition*), an assignment is the application
of a tag to a specific securable. It has no identifier of its own — its identity is
the composite of (entity_type, entity_name, tag_key). It is intentionally NOT a
`google.api.resource`: assignments are stored as associations between the entity and
its tag, not as standalone objects.
additionalProperties: false
title: The assignment of a tag to a Unity Catalog entity.
ExternalLocationInfo:
required:
- name
- url
- credential_name
- read_only
- credential_id
type: object
properties:
name:
type: string
description: Name of the external location.
url:
type: string
description: Path URL of the external location.
credential_name:
type: string
description: Name of the storage credential used with this location.
read_only:
type: boolean
description: Indicates whether the external location is read-only.
comment:
type: string
description: User-provided free-form text description.
owner:
type: string
description: The owner of the external location.
credential_id:
readOnly: true
type: string
description: Unique ID of the location's storage credential.
created_at:
readOnly: true
type: string
description: Time at which this catalog was created, in epoch milliseconds.
created_by:
readOnly: true
type: string
description: Username of catalog creator.
updated_at:
readOnly: true
type: string
description: Time at which this catalog was last updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of user who last modified catalog.
browse_only:
readOnly: true
type: boolean
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.
external_location_id:
readOnly: true
type: string
additionalProperties: false
title: External Location
FinalizeModelVersionRequest:
required: []
type: object
properties: {}
description: |-
Transitions a model version from PENDING_REGISTRATION to READY once the client
has finished writing all artifacts to the version's storage location.
additionalProperties: false
title: Finalize a model version.
FunctionInfo:
required:
- name
- catalog_name
- schema_name
- full_name
- data_type
- full_data_type
- parameter_style
- is_deterministic
- sql_data_access
- is_null_call
- security_type
- routine_body
type: object
properties:
name:
type: string
description: Name of function, relative to parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
catalog_name:
type: string
description: Name of parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: Name of parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
full_name:
readOnly: true
type: string
description: "Format: catalog_name.schema_name.function_name"
pattern: ^[a-z][0-9a-z_]*[0-9a-z]\.[a-z][0-9a-z_]*[0-9a-z]\.[a-z][0-9a-z_]*[0-9a-z]$
title: The three-level (fully qualified) name of the function.
data_type:
type: string
description: Full data type specification of the return type of the function.
full_data_type:
type: string
description: Full data type specification as SQL/catalogString text.
input_params:
allOf:
- $ref: "#/components/schemas/FunctionParameterInfos"
description: A collection of function parameters.
additionalProperties: false
title: Function Parameter Infos
return_params:
type: string
description: The return type of the function in JSON format.
routine_body_language:
type: string
description: The language of the function routine body.
routine_definition:
type: string
description: Function body.
routine_dependencies:
type: string
description: Function dependencies (in JSON form).
parameter_style:
enum:
- PARAMETER_STYLE_UNSPECIFIED
- S
type: string
description: The parameter-passing style.
format: enum
title: Parameter Style
is_deterministic:
type: boolean
description: Indicates whether the function is deterministic.
sql_data_access:
enum:
- SQL_DATA_ACCESS_UNSPECIFIED
- CONTAINS_SQL
- READS_SQL_DATA
- NO_SQL
type: string
description: SQL data access information.
format: enum
title: Sql Data Access
is_null_call:
type: boolean
description: Indicates whether the function is null-calling.
security_type:
enum:
- SECURITY_TYPE_UNSPECIFIED
- DEFINER
type: string
description: The security type of the function.
format: enum
title: Security Type
specific_name:
type: string
description: The type of the function (SCALAR or TABLE).
routine_body:
enum:
- ROUTINE_BODY_UNSPECIFIED
- SQL
- EXTERNAL
type: string
description: The routine body.
format: enum
title: Routine Body
comment:
type: string
description: User-provided free-form text description.
properties:
type: object
additionalProperties:
type: string
description: A map of key-value properties attached to the securable.
owner:
type: string
description: Username of current owner of the function.
function_id:
readOnly: true
type: string
description: Unique identifier for the function.
created_at:
readOnly: true
type: string
description: Time at which this function was created, in epoch milliseconds.
minimum: 0
exclusiveMinimum: true
created_by:
readOnly: true
type: string
description: Username of function creator.
updated_at:
readOnly: true
type: string
description: Time at which this function was last updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of user who last modified the function.
description: A User-Defined Function (UDF) registered under a catalog + schema hierarchy.
additionalProperties: false
title: Function
FunctionArg:
type: object
properties:
alias:
type: string
description: References a column via its `MatchColumn.alias`.
constant:
type: string
description: A literal constant value, passed as-is to the function.
description: An argument passed to a row-filter or column-mask function.
additionalProperties: false
title: Function Arg
FunctionDependency:
required:
- function_full_name
type: object
properties:
function_full_name:
type: string
description: |-
Full name of the dependent function, in the form of
catalog_name.schema_name.function_name.
description: A function that a SQL object (such as a view or metric view) depends on.
additionalProperties: false
title: Function Dependency
FunctionParameterInfo:
required:
- name
- type_text
- type_name
- parameter_mode
- parameter_type
type: object
properties:
name:
type: string
description: Name of parameter.
type_text:
type: string
description: Full data type specification as SQL/catalogString text.
type_json:
type: string
description: Full data type specification, JSON-serialized.
type_name:
enum:
- COLUMN_TYPE_NAME_UNSPECIFIED
- 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
type: string
description: Data type name.
format: enum
title: Column Type Name
type_precision:
type: integer
description: Digits of precision; required for DecimalTypes.
format: int32
minimum: -2147483648
maximum: 2147483647
type_scale:
type: integer
description: Digits to right of decimal; required for DecimalTypes.
format: int32
minimum: -2147483648
maximum: 2147483647
type_interval_type:
type: string
description: Format of IntervalType.
position:
type: integer
description: Ordinal position of column (starting at position 0).
format: int32
minimum: -2147483648
maximum: 2147483647
parameter_mode:
enum:
- PARAMETER_MODE_UNSPECIFIED
- IN
type: string
description: The mode of the function parameter.
format: enum
title: Parameter Mode
parameter_type:
enum:
- FUNCTION_PARAMETER_TYPE_UNSPECIFIED
- COLUMN
- PARAM
type: string
description: The type of function parameter.
format: enum
title: Function Parameter Type
parameter_default:
type: string
description: Default value of the parameter.
comment:
type: string
description: User-provided free-form text description.
description: Information about a single function parameter.
additionalProperties: false
title: Function Parameter Info
FunctionParameterInfos:
type: object
properties:
parameters:
type: array
items:
$ref: "#/components/schemas/FunctionParameterInfo"
additionalProperties: false
required:
- name
- type_text
- type_name
- parameter_mode
- parameter_type
description: Information about a single function parameter.
title: Function Parameter Info
description: The parameters of the function.
description: A collection of function parameters.
additionalProperties: false
title: Function Parameter Infos
FunctionRef:
required:
- function_name
type: object
properties:
function_name:
type: string
description: Fully qualified name of the function (catalog.schema.function) to invoke.
using:
type: array
items:
$ref: "#/components/schemas/FunctionArg"
additionalProperties: false
description: An argument passed to a row-filter or column-mask function.
title: Function Arg
description: The arguments passed to the function, in declaration order.
description: |-
A reference to the SQL function that implements a row-filter or column-mask policy,
together with the arguments it is invoked with.
additionalProperties: false
title: Function Ref
GcpOauthToken:
type: object
properties:
oauth_token:
type: string
description: The OAuth token used to access Google Cloud services.
additionalProperties: false
required:
- oauth_token
title: Gcp Oauth Token
GenerateTemporaryModelVersionCredentialsRequest:
required:
- catalog_name
- schema_name
- model_name
- version
- operation
type: object
properties:
catalog_name:
type: string
description: Name of parent catalog of the model version.
schema_name:
type: string
description: Name of parent schema of the model version.
model_name:
type: string
description: Name of the parent registered model.
version:
type: string
description: The integer version number of the model version.
operation:
enum:
- READ_MODEL_VERSION
- READ_WRITE_MODEL_VERSION
type: string
description: |-
The operation performed against the model version data, either
READ_MODEL_VERSION or READ_WRITE_MODEL_VERSION. If READ_WRITE_MODEL_VERSION
is specified, the credentials returned will have write permissions,
otherwise, it will be read only.
format: enum
title: Operation
description: Generate a new set of credentials for a model version.
additionalProperties: false
title: Generate Temporary Model Version Credentials Request
GenerateTemporaryPathCredentialsRequest:
required:
- url
- operation
type: object
properties:
url:
type: string
description: URL for path-based access.
operation:
enum:
- PATH_READ
- PATH_READ_WRITE
- PATH_CREATE_TABLE
type: string
description: The operation being performed on the path.
format: enum
title: Operation
dry_run:
type: boolean
description: |-
When set to true, the service will not validate that the generated
credentials can perform write operations, therefore no new paths will be
created and the response will not contain valid credentials. Defaults to false.
description: Generate a new set of credentials for a path.
additionalProperties: false
title: Generate Temporary Path Credentials Request
GenerateTemporaryTableCredentialsRequest:
required:
- table_id
- operation
type: object
properties:
table_id:
type: string
description: UUID of the table to read or write.
operation:
enum:
- READ
- READ_WRITE
type: string
description: |-
The operation performed against the table data, either READ or READ_WRITE.
If READ_WRITE is specified, the credentials returned will have write
permissions, otherwise, it will be read only.
format: enum
title: Operation
description: Generate a new set of credentials for a table.
additionalProperties: false
title: Generate Temporary Table Credentials Request
GenerateTemporaryVolumeCredentialsRequest:
required:
- volume_id
- operation
type: object
properties:
volume_id:
type: string
description: UUID of the volume to read or write.
operation:
enum:
- READ_VOLUME
- WRITE_VOLUME
type: string
description: |-
The operation performed against the volume data, either READ_VOLUME or
WRITE_VOLUME. If WRITE_VOLUME is specified, the credentials returned will
have write permissions, otherwise, it will be read only.
format: enum
title: Operation
description: Generate a new set of credentials for a volume.
additionalProperties: false
title: Generate Temporary Volume Credentials Request
GetPermissionsResponse:
type: object
properties:
privilege_assignments:
type: array
items:
$ref: "#/components/schemas/PrivilegeAssignment"
additionalProperties: false
required:
- principal
title: Privilege Assignment
description: The privileges assigned to each principal
next_page_token:
type: string
description: Opaque pagination token to go to next page based on previous query.
description: Response to list shares.
additionalProperties: false
title: Get Permissions Response
GetTableExistsResponse:
type: object
properties:
table_exists:
type: boolean
description: Boolean reflecting if table exists.
additionalProperties: false
required:
- table_exists
title: Get Table Exists Response
GoogleProtobufAny:
type: object
properties:
"@type":
type: string
description: The type of the serialized message.
additionalProperties: true
description: Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
ListAgentSkillsResponse:
type: object
properties:
agent_skills:
type: array
items:
$ref: "#/components/schemas/AgentSkill"
additionalProperties: false
required:
- name
- catalog_name
- schema_name
- full_name
- storage_location
- agent_skill_id
- agent_skill_type
description: An agent skill registered in Unity Catalog.
title: Agent Skill
description: The agent skills returned.
next_page_token:
type: string
description: |-
Absent if there are no more pages. page_token should be set to
this value for the next request to retrieve the next page of results.
title: Opaque token to retrieve the next page of results.
description: List agent skills response.
additionalProperties: false
title: List Agent Skills Response
ListAgentsResponse:
type: object
properties:
agents:
type: array
items:
$ref: "#/components/schemas/Agent"
additionalProperties: false
required:
- name
- catalog_name
- schema_name
- full_name
- agent_id
- invocation_protocol
- endpoint
description: An agent registered in Unity Catalog.
title: Agent
description: The agents returned.
next_page_token:
type: string
description: |-
Absent if there are no more pages. page_token should be set to
this value for the next request to retrieve the next page of results.
title: Opaque token to retrieve the next page of results.
description: List agents response.
additionalProperties: false
title: List Agents Response
ListCatalogsResponse:
type: object
properties:
catalogs:
type: array
items:
$ref: "#/components/schemas/CatalogInfo"
additionalProperties: false
required:
- name
description: A catalog is a root-level namespace that contains schemas.
title: Catalog
description: The catalogs returned.
next_page_token:
type: string
description: The next_page_token value to include in the next List request.
description: List catalogs response.
additionalProperties: false
title: List Catalogs Response
ListCredentialsResponse:
type: object
properties:
credentials:
type: array
items:
$ref: "#/components/schemas/CredentialInfo"
additionalProperties: false
required:
- name
- purpose
- read_only
- used_for_managed_storage
- full_name
description: A credential used to access external data sources or services.
title: Credential
description: The credentials returned.
next_page_token:
type: string
description: The next_page_token value to include in the next List request.
additionalProperties: false
title: List Credentials Response
ListEntityTagAssignmentsResponse:
type: object
properties:
tag_assignments:
type: array
items:
$ref: "#/components/schemas/EntityTagAssignment"
additionalProperties: false
required:
- entity_type
- entity_name
- tag_key
description: |-
Unlike a TagPolicy (a governed-tag *definition*), an assignment is the application
of a tag to a specific securable. It has no identifier of its own — its identity is
the composite of (entity_type, entity_name, tag_key). It is intentionally NOT a
`google.api.resource`: assignments are stored as associations between the entity and
its tag, not as standalone objects.
title: The assignment of a tag to a Unity Catalog entity.
description: The tag assignments returned.
next_page_token:
type: string
description: The next_page_token value to include in the next List request.
description: List entity tag assignments response.
additionalProperties: false
title: List Entity Tag Assignments Response
ListExternalLocationsResponse:
type: object
properties:
external_locations:
type: array
items:
$ref: "#/components/schemas/ExternalLocationInfo"
additionalProperties: false
required:
- name
- url
- credential_name
- read_only
- credential_id
title: External Location
description: The external locations returned.
next_page_token:
type: string
description: The next_page_token value to include in the next List request.
description: List external locations response.
additionalProperties: false
title: List External Locations Response
ListFunctionsResponse:
type: object
properties:
functions:
type: array
items:
$ref: "#/components/schemas/FunctionInfo"
additionalProperties: false
required:
- name
- catalog_name
- schema_name
- full_name
- data_type
- full_data_type
- parameter_style
- is_deterministic
- sql_data_access
- is_null_call
- security_type
- routine_body
description: A User-Defined Function (UDF) registered under a catalog + schema hierarchy.
title: Function
description: The functions returned.
next_page_token:
type: string
description: The next_page_token value to include in the next List request.
description: List functions response.
additionalProperties: false
title: List Functions Response
ListModelVersionsResponse:
type: object
properties:
model_versions:
type: array
items:
$ref: "#/components/schemas/ModelVersion"
additionalProperties: false
required:
- model_name
- catalog_name
- schema_name
- version
- source
- status
description: |-
A version is identified by its parent model's three-level name plus an
integer `version` number assigned by the server. It carries its own artifact
storage location and moves through the PENDING_REGISTRATION -> READY lifecycle
via the finalize operation.
title: A model version under a registered model.
description: The model versions returned.
next_page_token:
type: string
description: The next_page_token value to include in the next List request.
description: List model versions response.
additionalProperties: false
title: List Model Versions Response
ListPoliciesResponse:
type: object
properties:
policies:
type: array
items:
$ref: "#/components/schemas/PolicyInfo"
additionalProperties: false
required:
- name
- on_securable_type
- on_securable_fullname
- policy_type
description: |-
Policies are read as whole documents; enforcement is performed by the query engine,
not by this service. `when_condition` is stored and returned opaque — this service does
not parse or evaluate it.
title: A row-filter or column-mask policy bound to principals and scoped to a securable.
description: The policies returned.
next_page_token:
type: string
description: The next_page_token value to include in the next List request.
description: List policies response.
additionalProperties: false
title: List Policies Response
ListProvidersResponse:
type: object
properties:
providers:
type: array
items:
$ref: "#/components/schemas/Provider"
additionalProperties: false
required:
- name
- authentication_type
description: |-
A provider is the inbound counterpart of a recipient: it is registered from a
share activation/credential file and is used to access shares offered by an
upstream Delta Sharing server.
title: A provider represents an organization sharing data with this metastore.
description: List of providers.
next_page_token:
type: string
description: Opaque pagination token to go to next page based on previous query.
description: Response to list providers.
additionalProperties: false
title: List Providers Response
ListRecipientsResponse:
type: object
properties:
recipients:
type: array
items:
$ref: "#/components/schemas/Recipient"
additionalProperties: false
required:
- name
- authentication_type
title: Recipient
description: List of recipients.
next_page_token:
type: string
description: Opaque pagination token to go to next page based on previous query.
description: Response to list recipients.
additionalProperties: false
title: List Recipients Response
ListRegisteredModelsResponse:
type: object
properties:
registered_models:
type: array
items:
$ref: "#/components/schemas/RegisteredModelInfo"
additionalProperties: false
required:
- name
- catalog_name
- schema_name
- full_name
description: |-
Registered models group a collection of model versions. Individual versions
carry their own artifact storage location and are created, finalized, and
governed independently.
title: A registered model within the three-level namespace (catalog.schema.model).
description: The registered models returned.
next_page_token:
type: string
description: The next_page_token value to include in the next List request.
description: List registered models response.
additionalProperties: false
title: List Registered Models Response
ListSchemasResponse:
type: object
properties:
schemas:
type: array
items:
$ref: "#/components/schemas/SchemaInfo"
additionalProperties: false
required:
- name
- catalog_name
- full_name
description: A schema is a namespace within a catalog that contains tables.
title: Schema
description: The schemas returned.
next_page_token:
type: string
description: The next_page_token value to include in the next List request.
description: List Schemas response.
additionalProperties: false
title: List Schemas Response
ListSharesResponse:
type: object
properties:
shares:
type: array
items:
$ref: "#/components/schemas/Share"
additionalProperties: false
required:
- name
title: Share
description: List of shares.
next_page_token:
type: string
description: Opaque pagination token to go to next page based on previous query.
description: Response to list shares.
additionalProperties: false
title: List Shares Response
ListTableSummariesResponse:
type: object
properties:
tables:
type: array
items:
$ref: "#/components/schemas/TableSummary"
additionalProperties: false
required:
- full_name
- table_type
title: Table Summary
description: The table summaries returned.
next_page_token:
type: string
description: The next_page_token value to include in the next List request.
additionalProperties: false
title: List Table Summaries Response
ListTablesResponse:
type: object
properties:
tables:
type: array
items:
$ref: "#/components/schemas/TableInfo"
additionalProperties: false
required:
- name
- catalog_name
- schema_name
- table_type
- data_source_format
- full_name
title: Table
description: The tables returned.
next_page_token:
type: string
description: The next_page_token value to include in the next List request.
additionalProperties: false
description: Response for ListTablesRequest.
title: List Tables Response
ListTagPoliciesResponse:
type: object
properties:
tag_policies:
type: array
items:
$ref: "#/components/schemas/TagPolicy"
additionalProperties: false
required:
- tag_key
description: |-
A tag policy defines a tag key together with the rules that govern how it can
be used, including the optional set of allowed values. Assigning a governed
tag to an entity is done through the Entity Tag Assignments API.
title: A governed tag definition (tag policy).
description: The tag policies returned.
next_page_token:
type: string
description: The next_page_token value to include in the next List request.
description: List tag policies response.
additionalProperties: false
title: List Tag Policies Response
ListVolumesResponseContent:
type: object
properties:
volumes:
type: array
items:
$ref: "#/components/schemas/VolumeInfo"
additionalProperties: false
required:
- name
- catalog_name
- schema_name
- full_name
- storage_location
- volume_id
- volume_type
title: Volume
description: The volumes returned.
next_page_token:
type: string
description: |-
Absent if there are no more pages. page_token should be set to
this value for the next request to retrieve the next page of results.
title: Opaque token to retrieve the next page of results.
description: List Schemas response.
additionalProperties: false
title: List Volumes Response
MatchColumn:
required:
- alias
- condition
type: object
properties:
alias:
type: string
description: |-
The name of the alias the column is bound to when invoking the row-filter or
column-mask function.
condition:
type: string
description: The condition on the column, e.g. its name, that must match for this binding to apply.
description: |-
A column referenced by a policy, together with the alias it is bound to in the
row-filter or column-mask function invocation.
additionalProperties: false
title: Match Column
ModelVersion:
required:
- model_name
- catalog_name
- schema_name
- version
- source
- status
type: object
properties:
model_name:
type: string
description: Name of the parent registered model, relative to parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
catalog_name:
type: string
description: Name of parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: Name of parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
version:
readOnly: true
type: string
description: |-
Integer model version number, used to reference the model version in API
requests. Assigned by the server, monotonically increasing per model.
source:
type: string
description: |-
URI indicating the location of the source artifacts used to create the model
version.
run_id:
type: string
description: The run id used by the ML package that generated this model.
status:
readOnly: true
enum:
- MODEL_VERSION_STATUS_UNSPECIFIED
- PENDING_REGISTRATION
- FAILED_REGISTRATION
- READY
type: string
description: Current status of the model version.
format: enum
title: Model Version Status
storage_location:
readOnly: true
type: string
description: The storage location under which the model version's artifacts are stored.
comment:
type: string
description: User-provided free-form text description.
id:
readOnly: true
type: string
description: Unique identifier for the model version.
created_at:
readOnly: true
type: string
description: Time at which this model version was created, in epoch milliseconds.
minimum: 0
exclusiveMinimum: true
created_by:
readOnly: true
type: string
description: Username of model version creator.
updated_at:
readOnly: true
type: string
description: Time at which this model version was last updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of user who last modified the model version.
metastore_id:
readOnly: true
type: string
description: The unique identifier of the metastore.
browse_only:
readOnly: true
type: boolean
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.
description: |-
A version is identified by its parent model's three-level name plus an
integer `version` number assigned by the server. It carries its own artifact
storage location and moves through the PENDING_REGISTRATION -> READY lifecycle
via the finalize operation.
additionalProperties: false
title: A model version under a registered model.
PermissionsChange:
type: object
properties:
principal:
type: string
description: The principal (user email address or group name).
add:
type: array
items:
type: string
description: The set of privileges to add.
remove:
type: array
items:
type: string
description: The set of privileges to remove.
additionalProperties: false
required:
- principal
title: Permissions Change
PolicyInfo:
required:
- name
- on_securable_type
- on_securable_fullname
- policy_type
type: object
properties:
name:
type: string
description: The name of the policy. Unique within the securable it is defined on.
id:
readOnly: true
type: string
description: Server-assigned unique identifier for the policy.
on_securable_type:
type: string
description: "Supported values: catalogs, schemas, tables."
minLength: 1
pattern: ^(catalogs|schemas|tables)$
title: The type of securable the policy is defined on.
on_securable_fullname:
type: string
description: The fully qualified name of the securable the policy is defined on.
minLength: 1
policy_type:
enum:
- POLICY_TYPE_UNSPECIFIED
- POLICY_TYPE_ROW_FILTER
- POLICY_TYPE_COLUMN_MASK
type: string
description: The kind of enforcement this policy applies.
format: enum
title: Policy Type
to_principals:
type: array
items:
type: string
description: The principals the policy applies to. Empty means "all principals".
except_principals:
type: array
items:
type: string
description: The principals explicitly excluded from the policy, even if matched by to_principals.
when_condition:
type: string
description: |-
An opaque condition expression, e.g. "hasTagValue('env','prod')", evaluated by the
query engine at enforcement time. Stored and returned as-is; not parsed server-side.
match_columns:
type: array
items:
$ref: "#/components/schemas/MatchColumn"
additionalProperties: false
required:
- alias
- condition
description: |-
A column referenced by a policy, together with the alias it is bound to in the
row-filter or column-mask function invocation.
title: Match Column
description: |-
The columns referenced by the row-filter or column-mask function, and the aliases
they are bound to.
row_filter:
allOf:
- $ref: "#/components/schemas/FunctionRef"
description: |-
A reference to the SQL function that implements a row-filter or column-mask policy,
together with the arguments it is invoked with.
additionalProperties: false
required:
- function_name
title: Function Ref
column_mask:
allOf:
- $ref: "#/components/schemas/FunctionRef"
description: |-
A reference to the SQL function that implements a row-filter or column-mask policy,
together with the arguments it is invoked with.
additionalProperties: false
required:
- function_name
title: Function Ref
comment:
type: string
description: User-provided free-form text description of the policy.
created_at:
readOnly: true
type: string
description: Time at which this policy was created, in epoch milliseconds.
updated_at:
readOnly: true
type: string
description: Time at which this policy was last updated, in epoch milliseconds.
description: |-
Policies are read as whole documents; enforcement is performed by the query engine,
not by this service. `when_condition` is stored and returned opaque — this service does
not parse or evaluate it.
additionalProperties: false
title: A row-filter or column-mask policy bound to principals and scoped to a securable.
PrivilegeAssignment:
type: object
properties:
principal:
type: string
description: For deleted principals, principal is empty while principal_id is populated.
title: The principal (user email address or group name).
privileges:
type: array
items:
type: string
description: The privileges assigned to the principal.
additionalProperties: false
required:
- principal
title: Privilege Assignment
Provider:
required:
- name
- authentication_type
type: object
properties:
id:
readOnly: true
type: string
description: Unique ID of the provider.
name:
type: string
description: The name of the provider.
authentication_type:
enum:
- PROVIDER_AUTHENTICATION_TYPE_UNSPECIFIED
- TOKEN
- OAUTH_CLIENT_CREDENTIALS
type: string
description: The delta sharing authentication type.
format: enum
title: Provider Authentication Type
owner:
type: string
description: Username of the provider owner.
comment:
type: string
description: Description about the provider.
recipient_profile_str:
type: string
description: |-
The recipient profile (credential file contents) used to connect to the
sharing server, present only for TOKEN authentication.
properties:
type: object
additionalProperties:
type: string
description: A map of key-value properties attached to the provider.
created_at:
readOnly: true
type: string
description: Time at which this provider was created, in epoch milliseconds.
created_by:
readOnly: true
type: string
description: Username of the creator of the provider.
updated_at:
readOnly: true
type: string
description: Time at which this provider was updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of the provider updater.
description: |-
A provider is the inbound counterpart of a recipient: it is registered from a
share activation/credential file and is used to access shares offered by an
upstream Delta Sharing server.
additionalProperties: false
title: A provider represents an organization sharing data with this metastore.
R2TemporaryCredentials:
type: object
properties:
access_key_id:
type: string
description: The access key ID that identifies the temporary credentials.
secret_access_key:
type: string
description: The secret access key associated with the access key.
session_token:
type: string
description: The generated JWT that users must pass to use the temporary credentials.
additionalProperties: false
required:
- access_key_id
- secret_access_key
- session_token
title: R2 Temporary Credentials
Recipient:
required:
- name
- authentication_type
type: object
properties:
id:
readOnly: true
type: string
description: Unique ID of the recipient.
name:
type: string
description: The name of the recipient.
authentication_type:
enum:
- AUTHENTICATION_TYPE_UNSPECIFIED
- TOKEN
- OAUTH_CLIENT_CREDENTIALS
type: string
description: The delta sharing authentication type.
format: enum
title: Authentication Type
owner:
type: string
description: Username of the recipient owner.
comment:
type: string
description: Description about the recipient.
properties:
type: object
additionalProperties:
type: string
description: A map of key-value properties attached to the securable.
created_at:
readOnly: true
type: string
description: Time at which this share was created, in epoch milliseconds.
created_by:
readOnly: true
type: string
description: Username of the creator of the share.
tokens:
readOnly: true
type: array
items:
$ref: "#/components/schemas/RecipientToken"
additionalProperties: false
required:
- id
- created_at
- created_by
- activation_url
- expiration_time
- updated_at
- updated_by
title: Recipient Token
description: This field is only present when the authentication_type is TOKEN.
updated_at:
readOnly: true
type: string
description: Time at which this share was updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of share updater.
additionalProperties: false
title: Recipient
RecipientToken:
required:
- id
- created_at
- created_by
- activation_url
- expiration_time
- updated_at
- updated_by
type: object
properties:
id:
readOnly: true
type: string
description: Unique ID of the recipient token.
created_at:
readOnly: true
type: string
description: Time at which this recipient token was created, in epoch milliseconds.
created_by:
readOnly: true
type: string
description: Username of recipient token creator.
activation_url:
readOnly: true
type: string
description: Full activation URL to retrieve the access token. It will be empty if the token is already retrieved.
expiration_time:
type: string
description: Expiration timestamp of the token in epoch milliseconds.
updated_at:
readOnly: true
type: string
description: Time at which this recipient token was updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of recipient token updater.
additionalProperties: false
title: Recipient Token
RegisteredModelInfo:
required:
- name
- catalog_name
- schema_name
- full_name
type: object
properties:
name:
type: string
description: Name of registered model, relative to parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
catalog_name:
type: string
description: Name of parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: Name of parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
full_name:
readOnly: true
type: string
description: "Format: catalog_name.schema_name.model_name"
pattern: ^[a-z][0-9a-z_]*[0-9a-z]\.[a-z][0-9a-z_]*[0-9a-z]\.[a-z][0-9a-z_]*[0-9a-z]$
title: The three-level (fully qualified) name of the registered model.
storage_location:
readOnly: true
type: string
description: The storage location under which model version data files are stored.
owner:
readOnly: true
type: string
description: Username of current owner of the registered model.
comment:
type: string
description: User-provided free-form text description.
id:
readOnly: true
type: string
description: Unique identifier for the registered model.
created_at:
readOnly: true
type: string
description: Time at which this registered model was created, in epoch milliseconds.
minimum: 0
exclusiveMinimum: true
created_by:
readOnly: true
type: string
description: Username of registered model creator.
updated_at:
readOnly: true
type: string
description: Time at which this registered model was last updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of user who last modified the registered model.
metastore_id:
readOnly: true
type: string
description: The unique identifier of the metastore.
browse_only:
readOnly: true
type: boolean
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.
description: |-
Registered models group a collection of model versions. Individual versions
carry their own artifact storage location and are created, finalized, and
governed independently.
additionalProperties: false
title: A registered model within the three-level namespace (catalog.schema.model).
SchemaInfo:
type: object
additionalProperties: false
description: A schema is a namespace within a catalog that contains tables.
properties:
catalog_name:
description: Name of parent catalog.
type: string
comment:
description: User-provided free-form text description.
type: string
created_at:
description: Time at which this schema was created, in epoch milliseconds.
type: integer
created_by:
description: Username of schema creator.
type: string
full_name:
description: Full name of schema, in form of catalog_name.schema_name.
type: string
name:
description: Name of schema, relative to parent catalog.
type: string
owner:
description: Username of current owner of schema.
type: string
properties:
additionalProperties:
type: string
description: A map of key-value properties attached to the securable.
propertyNames:
type: string
type: object
schema_id:
description: Unique identifier for the schema.
type: string
storage_location:
description: |-
A unique path under `storage_root`. Absent when the schema has no
`storage_root`, in which case managed securables fall back to the parent
catalog's storage location.
Example: `s3://bucket/ucroot/__unitystorage/schemas/{schema_id}`.
title: Storage location URL (full path) for managed storage of the schema.
type: string
storage_root:
description: |-
Can be set when creating a schema. When set, managed tables/volumes created
in this schema are rooted here; otherwise the parent catalog's storage
location is used. Example: `s3://bucket/ucroot`.
title: Storage root URL for managed storage location of the schema.
type: string
updated_at:
description: Time at which this schema was last updated, in epoch milliseconds.
type: integer
updated_by:
description: Username of user who last modified schema.
type: string
required:
- name
- catalog_name
- full_name
title: Schema
Share:
required:
- name
type: object
properties:
id:
readOnly: true
type: string
description: Unique ID of the recipient.
name:
type: string
description: Name of the share.
minLength: 1
maxLength: 255
title: Name of the share.
objects:
type: array
items:
$ref: "#/components/schemas/DataObject"
additionalProperties: false
required:
- name
- data_object_type
title: Data Object
description: A list of shared data objects within the share.
owner:
type: string
description: Username of current owner of share.
comment:
type: string
description: User-provided free-form text description.
maxLength: 65536
storage_location:
readOnly: true
type: string
description: Storage Location URL (full path) for the share.
storage_root:
readOnly: true
type: string
description: Storage root URL for the share.
created_at:
readOnly: true
type: string
description: Time at which this share was created, in epoch milliseconds.
created_by:
readOnly: true
type: string
description: Username of the creator of the share.
updated_at:
readOnly: true
type: string
description: Time at which this share was updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of share updater.
additionalProperties: false
description: |-
A share is a logical grouping to share with recipients. A share can be shared with one or multiple recipients.
A recipient can access all resources in a share. A share may contain multiple schemas.
title: Share
StagingTable:
required:
- id
- name
- schema_name
- catalog_name
- staging_location
- stage_committed
type: object
properties:
id:
readOnly: true
type: string
description: |-
Unique identifier generated for the staging table. Becomes the managed
table's id once finalized.
name:
type: string
description: Name of the staging table, relative to the parent schema.
schema_name:
type: string
description: Name of the parent schema relative to its parent catalog.
catalog_name:
type: string
description: Name of the parent catalog.
staging_location:
readOnly: true
type: string
description: |-
Storage location allocated for the staging table, where the client writes
the initial Delta commit. Immutable once allocated.
created_by:
readOnly: true
type: string
description: |-
Username of the principal that created the staging table. Only this
principal may finalize the table.
stage_committed:
readOnly: true
type: boolean
description: Whether the staging table has been finalized into a managed table.
created_at:
readOnly: true
type: string
description: Time at which this staging table was created, in epoch milliseconds.
description: |-
On creation the server allocates an immutable table id and storage location
under the parent schema/catalog's managed storage root. The client then
writes the initial Delta commit (`_delta_log/00...0.json`) at that location
and finalizes the table via the CreateTable API, which commits this staging
row. A staging table is not yet a usable table and is not returned by the
table APIs.
additionalProperties: false
title: |-
A staging table is a transient reservation created while provisioning a
Unity Catalog managed table.
Status:
type: object
properties:
code:
type: integer
description: The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
format: int32
message:
type: string
description: A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
details:
type: array
items:
$ref: "#/components/schemas/GoogleProtobufAny"
description: A list of messages that carry the error details. There is a common set of message types for APIs to use.
description: "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors)."
TableInfo:
required:
- name
- catalog_name
- schema_name
- table_type
- data_source_format
- full_name
type: object
properties:
name:
type: string
description: Name of table, relative to parent schema.
minLength: 3
maxLength: 255
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
catalog_name:
type: string
description: Name of parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: Name of parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
table_type:
enum:
- TABLE_TYPE_UNSPECIFIED
- MANAGED
- EXTERNAL
- VIEW
- MATERIALIZED_VIEW
- STREAMING_TABLE
- METRIC_VIEW
type: string
format: enum
title: Table Type
data_source_format:
enum:
- DATA_SOURCE_FORMAT_UNSPECIFIED
- DELTA
- ICEBERG
- HUDI
- PARQUET
- CSV
- JSON
- ORC
- AVRO
- TEXT
- UNITY_CATALOG
- DELTASHARING
type: string
description: Data source format of the table.
format: enum
title: Data Source Format
columns:
type: array
items:
$ref: "#/components/schemas/ColumnInfo"
additionalProperties: false
required:
- name
- type_text
- type_json
- type_name
title: Column
description: The array of Column definitions of the table's columns.
storage_location:
type: string
description: Storage root URL for table (for MANAGED, EXTERNAL tables)
view_definition:
type: string
description: |-
Definition text for view-like table types (VIEW, MATERIALIZED_VIEW,
STREAMING_TABLE, METRIC_VIEW). The format depends on the table type:
SQL for views, YAML for metric views.
view_dependencies:
allOf:
- $ref: "#/components/schemas/DependencyList"
description: A list of dependencies referenced by a view-like table.
additionalProperties: false
title: Dependency List
owner:
readOnly: true
type: string
description: Username of current owner of table.
comment:
type: string
description: User-provided free-form text description.
properties:
type: object
additionalProperties:
type: string
description: A map of key-value properties attached to the securable.
storage_credential_name:
type: string
description: Name of the storage credential, when a storage credential is configured for use with this table.
full_name:
readOnly: true
type: string
description: Full name of table, in form of catalog_name.schema_name.table_name.
pattern: ^[a-z][0-9a-z_]*[0-9a-z]\.[a-z][0-9a-z_]*[0-9a-z]\.[a-z][0-9a-z_]*[0-9a-z]$
created_at:
readOnly: true
type: string
description: Time at which this table was created, in epoch milliseconds.
created_by:
readOnly: true
type: string
description: Username of table creator.
updated_at:
readOnly: true
type: string
description: Time at which this table was last updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of user who last modified table.
deleted_at:
readOnly: true
type: string
description: Time at which this table was deleted, in epoch milliseconds. Field is omitted if table is not deleted.
table_id:
readOnly: true
type: string
description: Unique identifier for the table.
additionalProperties: false
description: A table is a Delta Lake table or a view on top of a Delta Lake table.
title: Table
TableDependency:
required:
- table_full_name
type: object
properties:
table_full_name:
type: string
description: |-
Full name of the dependent table, in the form of
catalog_name.schema_name.table_name.
description: A table that a SQL object (such as a view or metric view) depends on.
additionalProperties: false
title: Table Dependency
TableSummary:
type: object
properties:
full_name:
type: string
description: The full name of the table.
table_type:
enum:
- TABLE_TYPE_UNSPECIFIED
- MANAGED
- EXTERNAL
- VIEW
- MATERIALIZED_VIEW
- STREAMING_TABLE
- METRIC_VIEW
type: string
format: enum
title: Table Type
additionalProperties: false
required:
- full_name
- table_type
title: Table Summary
TagPolicy:
required:
- tag_key
type: object
properties:
tag_key:
type: string
description: The key of the governed tag.
minLength: 1
description:
type: string
description: User-provided free-form text description of the tag policy.
values:
type: array
items:
$ref: "#/components/schemas/Value"
additionalProperties: false
required:
- name
description: An allowed value for a governed tag.
title: Value
description: When empty, the governed tag does not restrict the values that may be assigned.
title: The set of allowed values for the governed tag.
id:
readOnly: true
type: string
description: Unique identifier for the tag policy.
created_at:
readOnly: true
type: string
description: Time at which this tag policy was created, in epoch milliseconds.
minimum: 0
exclusiveMinimum: true
updated_at:
readOnly: true
type: string
description: Time at which this tag policy was last updated, in epoch milliseconds.
description: |-
A tag policy defines a tag key together with the rules that govern how it can
be used, including the optional set of allowed values. Assigning a governed
tag to an entity is done through the Entity Tag Assignments API.
additionalProperties: false
title: A governed tag definition (tag policy).
TemporaryCredential:
type: object
properties:
expiration_time:
type: string
description: |-
Server time when the credential will expire, in epoch milliseconds.
The API client is advised to cache the credential given this expiration time.
minimum: 0
exclusiveMinimum: true
url:
type: string
description: The URL of the storage path accessible by the temporary credential.
pattern: ^(?:(?:[a-zA-Z][a-zA-Z\d+\-.]*):)?(?://(?:[A-Za-z0-9\-\.]+(?::\d+)?))?(/[^\?#]*)?(?:\?([^\#]*))?(?:\#(.*))?$
azure_user_delegation_sas:
allOf:
- $ref: "#/components/schemas/AzureUserDelegationSas"
description: Credentials for Azure Blob Storage.
additionalProperties: false
required:
- sas_token
title: Azure User Delegation Sas
azure_aad:
allOf:
- $ref: "#/components/schemas/AzureAad"
description: Credentials for Azure Active Directory.
additionalProperties: false
required:
- aad_token
title: Azure Aad
aws_temp_credentials:
allOf:
- $ref: "#/components/schemas/AwsTemporaryCredentials"
description: Credentials for AWS S3.
additionalProperties: false
required:
- access_key_id
- access_point
- secret_access_key
- session_token
title: Aws Temporary Credentials
gcp_oauth_token:
allOf:
- $ref: "#/components/schemas/GcpOauthToken"
description: Credentials for Google Cloud Storage.
additionalProperties: false
required:
- oauth_token
title: Gcp Oauth Token
r2_temp_credentials:
allOf:
- $ref: "#/components/schemas/R2TemporaryCredentials"
description: Credentials for R2.
additionalProperties: false
required:
- access_key_id
- secret_access_key
- session_token
title: R2 Temporary Credentials
description: The response to the GenerateTemporaryTableCredentialsRequest.
additionalProperties: false
required:
- expiration_time
- url
title: Temporary Credential
UpdateAgentRequest:
required: []
type: object
properties:
new_name:
type: string
description: New name for the agent.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
invocation_protocol:
enum:
- INVOCATION_PROTOCOL_UNSPECIFIED
- MCP
- A2A
- OPENAI
- ANTHROPIC
- REST
type: string
description: The protocol a recipient uses to invoke the agent.
format: enum
title: Invocation Protocol
endpoint:
type: string
description: The agent's invocation endpoint URL.
pattern: ^(?:(?:[a-zA-Z][a-zA-Z\d+\-.]*):)?(?://(?:[A-Za-z0-9\-\.]+(?::\d+)?))?(/[^\?#]*)?(?:\?([^\#]*))?(?:\#(.*))?$
description:
type: string
description: Updated LLM-readable description.
maxLength: 65536
capabilities:
type: array
items:
type: string
description: Updated capability identifiers advertised by the agent.
input_schema:
type: string
description: Updated JSON Schema (encoded as a JSON string) describing the expected input.
comment:
type: string
description: The comment attached to the agent.
minLength: 1
maxLength: 65536
owner:
type: string
description: The identifier of the user who owns the agent.
additionalProperties: false
title: Update Agent Request
UpdateAgentSkillRequest:
required: []
type: object
properties:
new_name:
type: string
description: New name for the agent skill.
minLength: 3
maxLength: 64
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
description:
type: string
description: Updated description of what the skill does and when to use it.
maxLength: 1024
allowed_tools:
type: array
items:
type: string
description: Updated tools the skill is permitted to use.
comment:
type: string
description: The comment attached to the agent skill.
minLength: 1
maxLength: 65536
owner:
type: string
description: The identifier of the user who owns the agent skill.
additionalProperties: false
title: Update Agent Skill Request
UpdateCatalogRequest:
required: []
type: object
properties:
owner:
type: string
description: Username of new owner of catalog.
comment:
type: string
description: User-provided free-form text description.
properties:
type: object
additionalProperties:
type: string
description: |-
When provided in update request, the specified properties will override the existing properties.
To add and remove properties, one would need to perform a read-modify-write.
title: A map of key-value properties attached to the securable.
new_name:
type: string
description: Name of catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
description: Update a catalog
additionalProperties: false
title: Update Catalog Request
UpdateCredentialRequest:
required: []
type: object
properties:
new_name:
type: string
description: New name of the credential.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
comment:
type: string
description: Comment associated with the credential.
read_only:
type: boolean
description: Whether the credential is usable only for read operations. Only applicable when purpose is STORAGE.
owner:
type: string
description: Username of current owner of credential.
skip_validation:
type: boolean
description: Supply true to this argument to skip validation of the updated credential.
force:
type: boolean
description: |-
Force an update even if there are dependent services (when purpose is SERVICE)
or dependent external locations and external tables (when purpose is STORAGE).
azure_service_principal:
allOf:
- $ref: "#/components/schemas/AzureServicePrincipal"
description: The Azure service principal configuration.
additionalProperties: false
required:
- directory_id
- application_id
title: Azure Service Principal
azure_managed_identity:
allOf:
- $ref: "#/components/schemas/AzureManagedIdentity"
description: The Azure managed identity configuration.
additionalProperties: false
required:
- access_connector_id
title: Azure Managed Identity
azure_storage_key:
allOf:
- $ref: "#/components/schemas/AzureStorageKey"
description: The Azure storage key configuration.
additionalProperties: false
required:
- account_name
- account_key
title: Azure Storage Key
aws_iam_role:
allOf:
- $ref: "#/components/schemas/AwsIamRoleConfig"
description: |-
This is an internal configuration type, not exposed in the public API response.
It stores the static credentials (or ambient credential fallback) used to
authorize the STS:AssumeRole call when vending temporary credentials.
additionalProperties: false
required:
- role_arn
title: The AWS IAM role configuration used server-side to call STS AssumeRole.
databricks_gcp_service_account:
allOf:
- $ref: "#/components/schemas/DatabricksGcpServiceAccount"
description: The Databricks managed GCP service account configuration.
additionalProperties: false
title: Databricks Gcp Service Account
description: Update a credential.
additionalProperties: false
title: Update Credential Request
UpdateEntityTagAssignmentRequest:
required:
- tag_assignment
type: object
properties:
tag_assignment:
allOf:
- $ref: "#/components/schemas/EntityTagAssignment"
description: |-
Unlike a TagPolicy (a governed-tag *definition*), an assignment is the application
of a tag to a specific securable. It has no identifier of its own — its identity is
the composite of (entity_type, entity_name, tag_key). It is intentionally NOT a
`google.api.resource`: assignments are stored as associations between the entity and
its tag, not as standalone objects.
additionalProperties: false
required:
- entity_type
- entity_name
- tag_key
title: The assignment of a tag to a Unity Catalog entity.
update_mask:
type: string
description: The list of fields to update, as a comma-separated string.
description: Update an entity tag assignment
additionalProperties: false
title: Update Entity Tag Assignment Request
UpdateExternalLocationRequest:
required: []
type: object
properties:
url:
type: string
description: Path URL of the external location.
pattern: ^(?:(?:[a-zA-Z][a-zA-Z\d+\-.]*):)?(?://(?:[A-Za-z0-9\-\.]+(?::\d+)?))?(/[^\?#]*)?(?:\?([^\#]*))?(?:\#(.*))?$
credential_name:
type: string
description: Name of the storage credential used with this location.
read_only:
type: boolean
description: Indicates whether the external location is read-only.
owner:
type: string
description: owner of the external location.
comment:
type: string
description: User-provided free-form text description.
new_name:
type: string
description: new name of the external location.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
force:
type: boolean
description: force update of the external location.
skip_validation:
type: boolean
description: Skips validation of the storage credential associated with the external location.
description: Update an external location
additionalProperties: false
title: Update External Location Request
UpdateFunctionRequest:
required: []
type: object
properties:
owner:
type: string
description: Username of new owner of the function.
description: Update a function
additionalProperties: false
title: Update Function Request
UpdateModelVersionRequest:
required: []
type: object
properties:
comment:
type: string
description: User-provided free-form text description.
description: Update a model version.
additionalProperties: false
title: Update Model Version Request
UpdatePermissionsRequest:
required: []
type: object
properties:
changes:
type: array
items:
$ref: "#/components/schemas/PermissionsChange"
additionalProperties: false
required:
- principal
title: Permissions Change
description: Array of permissions change objects.
omit_permissions_list:
type: boolean
description: Whether to return the latest permissions list of the share in the response.
additionalProperties: false
title: Update Permissions Request
UpdatePermissionsResponse:
type: object
properties:
privilege_assignments:
type: array
items:
$ref: "#/components/schemas/PrivilegeAssignment"
additionalProperties: false
required:
- principal
title: Privilege Assignment
description: The privileges assigned to each principal
additionalProperties: false
title: Update Permissions Response
UpdatePolicyRequest:
required:
- policy_info
type: object
properties:
policy_info:
allOf:
- $ref: "#/components/schemas/PolicyInfo"
description: |-
Policies are read as whole documents; enforcement is performed by the query engine,
not by this service. `when_condition` is stored and returned opaque — this service does
not parse or evaluate it.
additionalProperties: false
required:
- name
- on_securable_type
- on_securable_fullname
- policy_type
title: A row-filter or column-mask policy bound to principals and scoped to a securable.
update_mask:
type: string
description: The list of fields to update, as a comma-separated string.
description: Update a policy defined on a securable.
additionalProperties: false
title: Update Policy Request
UpdateProviderRequest:
required: []
type: object
properties:
new_name:
type: string
description: New name for the provider.
pattern: ^[a-z][0-9a-z._]*[0-9a-z]$
owner:
type: string
description: Username of the provider owner.
comment:
type: string
description: Description about the provider.
recipient_profile_str:
type: string
description: |-
The recipient profile (credential file contents) used to connect to the
sharing server.
properties:
type: object
additionalProperties:
type: string
description: |-
When provided in update request, the specified properties will override the existing properties.
To add and remove properties, one would need to perform a read-modify-write.
title: Provider properties as map of string key-value pairs.
description: Update a provider
additionalProperties: false
title: Update Provider Request
UpdateRecipientRequest:
required: []
type: object
properties:
new_name:
type: string
description: New name for the recipient
pattern: ^[a-z][0-9a-z._]*[0-9a-z]$
owner:
type: string
description: Username of the recipient owner.
comment:
type: string
description: Description about the recipient.
properties:
type: object
additionalProperties:
type: string
description: |-
When provided in update request, the specified properties will override the existing properties.
To add and remove properties, one would need to perform a read-modify-write.
title: Recipient properties as map of string key-value pairs.
expiration_time:
type: string
description: Expiration timestamp of the token, in epoch milliseconds.
description: Update a recipient
additionalProperties: false
title: Update Recipient Request
UpdateRegisteredModelRequest:
required: []
type: object
properties:
new_name:
type: string
description: New name for the registered model.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
comment:
type: string
description: User-provided free-form text description.
owner:
type: string
description: Username of new owner of the registered model.
description: Update a registered model.
additionalProperties: false
title: Update Registered Model Request
UpdateSchemaRequest:
required: []
type: object
properties:
comment:
type: string
description: User-provided free-form text description.
properties:
type: object
additionalProperties:
type: string
description: |-
When provided in update request, the specified properties will override the existing properties.
To add and remove properties, one would need to perform a read-modify-write.
title: A map of key-value properties attached to the securable.
new_name:
type: string
description: Name of schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
description: Update a Schema
additionalProperties: false
title: Update Schema Request
UpdateShareRequest:
required: []
type: object
properties:
updates:
type: array
items:
$ref: "#/components/schemas/DataObjectUpdate"
additionalProperties: false
required:
- action
description: Data object update.
title: Data Object Update
description: Array of shared data object updates.
new_name:
type: string
description: A new name for the share.
minLength: 3
pattern: ^[a-z][0-9a-z._]*[0-9a-z]$
owner:
type: string
description: Owner of the share.
comment:
type: string
description: User-provided free-form text description.
description: The caller must be a metastore admin or have the UPDATE_SHARE privilege on the metastore.
additionalProperties: false
title: Update a share.
UpdateTagPolicyRequest:
required:
- tag_policy
type: object
properties:
tag_policy:
allOf:
- $ref: "#/components/schemas/TagPolicy"
description: |-
A tag policy defines a tag key together with the rules that govern how it can
be used, including the optional set of allowed values. Assigning a governed
tag to an entity is done through the Entity Tag Assignments API.
additionalProperties: false
required:
- tag_key
title: A governed tag definition (tag policy).
update_mask:
type: string
description: The list of fields to update, as a comma-separated string.
description: Update a tag policy
additionalProperties: false
title: Update Tag Policy Request
UpdateVolumeRequest:
required: []
type: object
properties:
new_name:
type: string
description: New name for the volume.
minLength: 3
comment:
type: string
description: The comment attached to the volume
minLength: 1
maxLength: 65536
owner:
type: string
description: The identifier of the user who owns the volume
additionalProperties: false
title: Update Volume Request
Value:
required:
- name
type: object
properties:
name:
type: string
description: The name of the allowed value.
description: An allowed value for a governed tag.
additionalProperties: false
title: Value
VolumeInfo:
required:
- name
- catalog_name
- schema_name
- full_name
- storage_location
- volume_id
- volume_type
type: object
properties:
name:
type: string
description: Name of volume, relative to parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
catalog_name:
type: string
description: Name of parent catalog.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
schema_name:
type: string
description: Name of parent schema.
minLength: 3
pattern: ^[a-z][0-9a-z_]*[0-9a-z]$
full_name:
readOnly: true
type: string
description: The three-level (fully qualified) name of the volume
pattern: ^[a-z][0-9a-z_]*[0-9a-z]\.[a-z][0-9a-z_]*[0-9a-z]\.[a-z][0-9a-z_]*[0-9a-z]$
storage_location:
type: string
description: The storage location on the cloud
pattern: ^(?:(?:[a-zA-Z][a-zA-Z\d+\-.]*):)?(?://(?:[A-Za-z0-9\-\.]+(?::\d+)?))?(/[^\?#]*)?(?:\?([^\#]*))?(?:\#(.*))?$
volume_id:
readOnly: true
type: string
description: The unique identifier of the volume
volume_type:
enum:
- VOLUME_TYPE_UNSPECIFIED
- EXTERNAL
- MANAGED
type: string
description: |-
An external volume is located in the specified external location.
A managed volume is located in the default location which is specified
by the parent schema, or the parent catalog, or the Metastore.
format: enum
title: Volume Type
owner:
readOnly: true
type: string
description: Username of current owner of table.
comment:
type: string
description: User-provided free-form text description.
created_at:
readOnly: true
type: string
description: Time at which this catalog was created, in epoch milliseconds.
minimum: 0
exclusiveMinimum: true
created_by:
readOnly: true
type: string
description: Username of catalog creator.
updated_at:
readOnly: true
type: string
description: Time at which this catalog was last updated, in epoch milliseconds.
updated_by:
readOnly: true
type: string
description: Username of user who last modified catalog.
browse_only:
readOnly: true
type: boolean
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.
metastore_id:
readOnly: true
type: string
description: The unique identifier of the metastore
additionalProperties: false
title: Volume