{
  "parameters": {
    "upload_protocol": {
      "type": "string",
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query"
    },
    "key": {
      "location": "query",
      "type": "string",
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token."
    },
    "quotaUser": {
      "type": "string",
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query"
    },
    "$.xgafv": {
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "type": "string",
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "location": "query"
    },
    "alt": {
      "location": "query",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "default": "json",
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "type": "string",
      "description": "Data format for response."
    },
    "fields": {
      "type": "string",
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query"
    },
    "access_token": {
      "type": "string",
      "description": "OAuth access token.",
      "location": "query"
    },
    "oauth_token": {
      "location": "query",
      "type": "string",
      "description": "OAuth 2.0 token for the current user."
    },
    "prettyPrint": {
      "location": "query",
      "default": "true",
      "type": "boolean",
      "description": "Returns response with indentations and line breaks."
    },
    "uploadType": {
      "type": "string",
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query"
    },
    "callback": {
      "location": "query",
      "type": "string",
      "description": "JSONP"
    }
  },
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "revision": "20260410",
  "mtlsRootUrl": "https://biglake.mtls.googleapis.com/",
  "ownerName": "Google",
  "servicePath": "",
  "batchPath": "batch",
  "schemas": {
    "SerDeInfo": {
      "id": "SerDeInfo",
      "description": "Serializer and deserializer information.",
      "type": "object",
      "properties": {
        "serializationLib": {
          "description": "The fully qualified Java class name of the serialization library.",
          "type": "string"
        }
      }
    },
    "Table": {
      "id": "Table",
      "description": "Represents a table.",
      "type": "object",
      "properties": {
        "updateTime": {
          "readOnly": true,
          "description": "Output only. The last modification time of the table.",
          "type": "string",
          "format": "google-datetime"
        },
        "expireTime": {
          "format": "google-datetime",
          "readOnly": true,
          "description": "Output only. The time when this table is considered expired. Only set after the table is deleted.",
          "type": "string"
        },
        "name": {
          "readOnly": true,
          "description": "Output only. The resource name. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/tables/{table_id}",
          "type": "string"
        },
        "deleteTime": {
          "readOnly": true,
          "description": "Output only. The deletion time of the table. Only set after the table is deleted.",
          "type": "string",
          "format": "google-datetime"
        },
        "createTime": {
          "readOnly": true,
          "description": "Output only. The creation time of the table.",
          "type": "string",
          "format": "google-datetime"
        },
        "type": {
          "enumDescriptions": [
            "The type is not specified.",
            "Represents a table compatible with Hive Metastore tables."
          ],
          "description": "The table type.",
          "type": "string",
          "enum": [
            "TYPE_UNSPECIFIED",
            "HIVE"
          ]
        },
        "etag": {
          "description": "The checksum of a table object computed by the server based on the value of other fields. It may be sent on update requests to ensure the client has an up-to-date value before proceeding. It is only checked for update table operations.",
          "type": "string"
        },
        "hiveOptions": {
          "$ref": "HiveTableOptions",
          "description": "Options of a Hive table."
        }
      }
    },
    "Database": {
      "description": "Database is the container of tables.",
      "type": "object",
      "properties": {
        "updateTime": {
          "readOnly": true,
          "description": "Output only. The last modification time of the database.",
          "type": "string",
          "format": "google-datetime"
        },
        "expireTime": {
          "format": "google-datetime",
          "readOnly": true,
          "description": "Output only. The time when this database is considered expired. Only set after the database is deleted.",
          "type": "string"
        },
        "type": {
          "enum": [
            "TYPE_UNSPECIFIED",
            "HIVE"
          ],
          "enumDescriptions": [
            "The type is not specified.",
            "Represents a database storing tables compatible with Hive Metastore tables."
          ],
          "description": "The database type.",
          "type": "string"
        },
        "hiveOptions": {
          "$ref": "HiveDatabaseOptions",
          "description": "Options of a Hive database."
        },
        "name": {
          "readOnly": true,
          "description": "Output only. The resource name. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}",
          "type": "string"
        },
        "deleteTime": {
          "readOnly": true,
          "description": "Output only. The deletion time of the database. Only set after the database is deleted.",
          "type": "string",
          "format": "google-datetime"
        },
        "createTime": {
          "description": "Output only. The creation time of the database.",
          "type": "string",
          "readOnly": true,
          "format": "google-datetime"
        }
      },
      "id": "Database"
    },
    "HiveTableOptions": {
      "description": "Options of a Hive table.",
      "type": "object",
      "properties": {
        "tableType": {
          "description": "Hive table type. For example, MANAGED_TABLE, EXTERNAL_TABLE.",
          "type": "string"
        },
        "storageDescriptor": {
          "description": "Stores physical storage information of the data.",
          "$ref": "StorageDescriptor"
        },
        "parameters": {
          "description": "Stores user supplied Hive table parameters.",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "id": "HiveTableOptions"
    },
    "StorageDescriptor": {
      "description": "Stores physical storage information of the data.",
      "type": "object",
      "properties": {
        "inputFormat": {
          "description": "The fully qualified Java class name of the input format.",
          "type": "string"
        },
        "outputFormat": {
          "description": "The fully qualified Java class name of the output format.",
          "type": "string"
        },
        "serdeInfo": {
          "$ref": "SerDeInfo",
          "description": "Serializer and deserializer information."
        },
        "locationUri": {
          "description": "Cloud Storage folder URI where the table data is stored, starting with \"gs://\".",
          "type": "string"
        }
      },
      "id": "StorageDescriptor"
    },
    "CheckLockRequest": {
      "id": "CheckLockRequest",
      "description": "Request message for the CheckLock method.",
      "type": "object",
      "properties": {}
    },
    "ListCatalogsResponse": {
      "description": "Response message for the ListCatalogs method.",
      "type": "object",
      "properties": {
        "catalogs": {
          "description": "The catalogs from the specified project.",
          "type": "array",
          "items": {
            "$ref": "Catalog"
          }
        },
        "nextPageToken": {
          "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.",
          "type": "string"
        }
      },
      "id": "ListCatalogsResponse"
    },
    "HiveDatabaseOptions": {
      "description": "Options of a Hive database.",
      "type": "object",
      "properties": {
        "locationUri": {
          "description": "Cloud Storage folder URI where the database data is stored, starting with \"gs://\".",
          "type": "string"
        },
        "parameters": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Stores user supplied Hive database parameters.",
          "type": "object"
        }
      },
      "id": "HiveDatabaseOptions"
    },
    "ListTablesResponse": {
      "description": "Response message for the ListTables method.",
      "type": "object",
      "properties": {
        "tables": {
          "items": {
            "$ref": "Table"
          },
          "description": "The tables from the specified database.",
          "type": "array"
        },
        "nextPageToken": {
          "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.",
          "type": "string"
        }
      },
      "id": "ListTablesResponse"
    },
    "Lock": {
      "id": "Lock",
      "description": "Represents a lock.",
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "TYPE_UNSPECIFIED",
            "EXCLUSIVE"
          ],
          "description": "The lock type.",
          "type": "string",
          "enumDescriptions": [
            "The type is not specified.",
            "An exclusive lock prevents another lock from being created on the same resource."
          ]
        },
        "name": {
          "description": "Output only. The resource name. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/locks/{lock_id}",
          "type": "string",
          "readOnly": true
        },
        "state": {
          "enum": [
            "STATE_UNSPECIFIED",
            "WAITING",
            "ACQUIRED"
          ],
          "description": "Output only. The lock state.",
          "type": "string",
          "readOnly": true,
          "enumDescriptions": [
            "The state is not specified.",
            "Waiting to acquire the lock.",
            "The lock has been acquired."
          ]
        },
        "createTime": {
          "format": "google-datetime",
          "description": "Output only. The creation time of the lock.",
          "type": "string",
          "readOnly": true
        },
        "tableId": {
          "description": "The table ID (not fully qualified name) in the same database that the lock will be created on. The table must exist.",
          "type": "string"
        }
      }
    },
    "Empty": {
      "id": "Empty",
      "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }",
      "type": "object",
      "properties": {}
    },
    "ListLocksResponse": {
      "description": "Response message for the ListLocks method.",
      "type": "object",
      "properties": {
        "locks": {
          "items": {
            "$ref": "Lock"
          },
          "description": "The locks from the specified database.",
          "type": "array"
        },
        "nextPageToken": {
          "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.",
          "type": "string"
        }
      },
      "id": "ListLocksResponse"
    },
    "ListDatabasesResponse": {
      "description": "Response message for the ListDatabases method.",
      "type": "object",
      "properties": {
        "databases": {
          "items": {
            "$ref": "Database"
          },
          "description": "The databases from the specified catalog.",
          "type": "array"
        },
        "nextPageToken": {
          "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.",
          "type": "string"
        }
      },
      "id": "ListDatabasesResponse"
    },
    "RenameTableRequest": {
      "description": "Request message for the RenameTable method in MetastoreService",
      "type": "object",
      "properties": {
        "newName": {
          "description": "Required. The new `name` for the specified table, must be in the same database. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/tables/{table_id}",
          "type": "string"
        }
      },
      "id": "RenameTableRequest"
    },
    "Catalog": {
      "id": "Catalog",
      "description": "Catalog is the container of databases.",
      "type": "object",
      "properties": {
        "expireTime": {
          "format": "google-datetime",
          "readOnly": true,
          "description": "Output only. The time when this catalog is considered expired. Only set after the catalog is deleted.",
          "type": "string"
        },
        "updateTime": {
          "format": "google-datetime",
          "description": "Output only. The last modification time of the catalog.",
          "type": "string",
          "readOnly": true
        },
        "createTime": {
          "description": "Output only. The creation time of the catalog.",
          "type": "string",
          "readOnly": true,
          "format": "google-datetime"
        },
        "name": {
          "readOnly": true,
          "description": "Output only. The resource name. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}",
          "type": "string"
        },
        "deleteTime": {
          "format": "google-datetime",
          "description": "Output only. The deletion time of the catalog. Only set after the catalog is deleted.",
          "type": "string",
          "readOnly": true
        }
      }
    }
  },
  "basePath": "",
  "version_module": true,
  "title": "BigLake API",
  "description": "The BigLake API provides access to BigLake Metastore, a serverless, fully managed, and highly available metastore for open-source data that can be used for querying Apache Iceberg tables in BigQuery.",
  "id": "biglake:v1alpha1",
  "documentationLink": "https://cloud.google.com/bigquery/",
  "fullyEncodeReservedExpansion": true,
  "protocol": "rest",
  "ownerDomain": "google.com",
  "rootUrl": "https://biglake.googleapis.com/",
  "version": "v1alpha1",
  "resources": {
    "projects": {
      "resources": {
        "locations": {
          "resources": {
            "catalogs": {
              "resources": {
                "databases": {
                  "resources": {
                    "tables": {
                      "methods": {
                        "list": {
                          "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}/tables",
                          "httpMethod": "GET",
                          "scopes": [
                            "https://www.googleapis.com/auth/bigquery",
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "description": "List all tables in a specified database.",
                          "path": "v1alpha1/{+parent}/tables",
                          "parameterOrder": [
                            "parent"
                          ],
                          "id": "biglake.projects.locations.catalogs.databases.tables.list",
                          "parameters": {
                            "pageToken": {
                              "location": "query",
                              "description": "A page token, received from a previous `ListTables` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTables` must match the call that provided the page token.",
                              "type": "string"
                            },
                            "parent": {
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+$",
                              "required": true,
                              "description": "Required. The parent, which owns this collection of tables. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}",
                              "type": "string",
                              "location": "path"
                            },
                            "pageSize": {
                              "location": "query",
                              "format": "int32",
                              "description": "The maximum number of tables to return. The service may return fewer than this value. If unspecified, at most 50 tables will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
                              "type": "integer"
                            },
                            "view": {
                              "location": "query",
                              "enumDescriptions": [
                                "Default value. The API will default to the BASIC view.",
                                "Include only table names. This is the default value.",
                                "Include everything."
                              ],
                              "description": "The view for the returned tables.",
                              "type": "string",
                              "enum": [
                                "TABLE_VIEW_UNSPECIFIED",
                                "BASIC",
                                "FULL"
                              ]
                            }
                          },
                          "response": {
                            "$ref": "ListTablesResponse"
                          }
                        },
                        "patch": {
                          "request": {
                            "$ref": "Table"
                          },
                          "path": "v1alpha1/{+name}",
                          "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}/tables/{tablesId}",
                          "httpMethod": "PATCH",
                          "scopes": [
                            "https://www.googleapis.com/auth/bigquery",
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "description": "Updates an existing table specified by the table ID.",
                          "parameterOrder": [
                            "name"
                          ],
                          "id": "biglake.projects.locations.catalogs.databases.tables.patch",
                          "parameters": {
                            "updateMask": {
                              "format": "google-fieldmask",
                              "location": "query",
                              "description": "The list of fields to update. For the `FieldMask` definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask If not set, defaults to all of the fields that are allowed to update.",
                              "type": "string"
                            },
                            "name": {
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+/tables/[^/]+$",
                              "required": true,
                              "description": "Output only. The resource name. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/tables/{table_id}",
                              "type": "string",
                              "location": "path"
                            }
                          },
                          "response": {
                            "$ref": "Table"
                          }
                        },
                        "rename": {
                          "response": {
                            "$ref": "Table"
                          },
                          "id": "biglake.projects.locations.catalogs.databases.tables.rename",
                          "parameters": {
                            "name": {
                              "description": "Required. The table's `name` field is used to identify the table to rename. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/tables/{table_id}",
                              "type": "string",
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+/tables/[^/]+$",
                              "required": true,
                              "location": "path"
                            }
                          },
                          "parameterOrder": [
                            "name"
                          ],
                          "path": "v1alpha1/{+name}:rename",
                          "request": {
                            "$ref": "RenameTableRequest"
                          },
                          "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}/tables/{tablesId}:rename",
                          "httpMethod": "POST",
                          "scopes": [
                            "https://www.googleapis.com/auth/bigquery",
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "description": "Renames an existing table specified by the table ID."
                        },
                        "create": {
                          "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}/tables",
                          "httpMethod": "POST",
                          "scopes": [
                            "https://www.googleapis.com/auth/bigquery",
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "description": "Creates a new table.",
                          "request": {
                            "$ref": "Table"
                          },
                          "path": "v1alpha1/{+parent}/tables",
                          "id": "biglake.projects.locations.catalogs.databases.tables.create",
                          "parameters": {
                            "parent": {
                              "location": "path",
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+$",
                              "required": true,
                              "description": "Required. The parent resource where this table will be created. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}",
                              "type": "string"
                            },
                            "tableId": {
                              "location": "query",
                              "description": "Required. The ID to use for the table, which will become the final component of the table's resource name.",
                              "type": "string"
                            }
                          },
                          "parameterOrder": [
                            "parent"
                          ],
                          "response": {
                            "$ref": "Table"
                          }
                        },
                        "delete": {
                          "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}/tables/{tablesId}",
                          "httpMethod": "DELETE",
                          "scopes": [
                            "https://www.googleapis.com/auth/bigquery",
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "description": "Deletes an existing table specified by the table ID.",
                          "path": "v1alpha1/{+name}",
                          "response": {
                            "$ref": "Table"
                          },
                          "id": "biglake.projects.locations.catalogs.databases.tables.delete",
                          "parameters": {
                            "name": {
                              "description": "Required. The name of the table to delete. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/tables/{table_id}",
                              "type": "string",
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+/tables/[^/]+$",
                              "required": true,
                              "location": "path"
                            }
                          },
                          "parameterOrder": [
                            "name"
                          ]
                        },
                        "get": {
                          "response": {
                            "$ref": "Table"
                          },
                          "id": "biglake.projects.locations.catalogs.databases.tables.get",
                          "parameters": {
                            "name": {
                              "location": "path",
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+/tables/[^/]+$",
                              "required": true,
                              "description": "Required. The name of the table to retrieve. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/tables/{table_id}",
                              "type": "string"
                            }
                          },
                          "parameterOrder": [
                            "name"
                          ],
                          "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}/tables/{tablesId}",
                          "httpMethod": "GET",
                          "scopes": [
                            "https://www.googleapis.com/auth/bigquery",
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "description": "Gets the table specified by the resource name.",
                          "path": "v1alpha1/{+name}"
                        }
                      }
                    },
                    "locks": {
                      "methods": {
                        "list": {
                          "response": {
                            "$ref": "ListLocksResponse"
                          },
                          "id": "biglake.projects.locations.catalogs.databases.locks.list",
                          "parameters": {
                            "pageToken": {
                              "description": "A page token, received from a previous `ListLocks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListLocks` must match the call that provided the page token.",
                              "type": "string",
                              "location": "query"
                            },
                            "pageSize": {
                              "description": "The maximum number of locks to return. The service may return fewer than this value. If unspecified, at most 50 locks will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
                              "type": "integer",
                              "location": "query",
                              "format": "int32"
                            },
                            "parent": {
                              "description": "Required. The parent, which owns this collection of locks. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}",
                              "type": "string",
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+$",
                              "required": true,
                              "location": "path"
                            }
                          },
                          "parameterOrder": [
                            "parent"
                          ],
                          "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}/locks",
                          "httpMethod": "GET",
                          "scopes": [
                            "https://www.googleapis.com/auth/bigquery",
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "description": "List all locks in a specified database.",
                          "path": "v1alpha1/{+parent}/locks"
                        },
                        "create": {
                          "request": {
                            "$ref": "Lock"
                          },
                          "path": "v1alpha1/{+parent}/locks",
                          "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}/locks",
                          "httpMethod": "POST",
                          "scopes": [
                            "https://www.googleapis.com/auth/bigquery",
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "description": "Creates a new lock.",
                          "parameterOrder": [
                            "parent"
                          ],
                          "id": "biglake.projects.locations.catalogs.databases.locks.create",
                          "parameters": {
                            "parent": {
                              "location": "path",
                              "description": "Required. The parent resource where this lock will be created. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}",
                              "type": "string",
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+$",
                              "required": true
                            }
                          },
                          "response": {
                            "$ref": "Lock"
                          }
                        },
                        "delete": {
                          "path": "v1alpha1/{+name}",
                          "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}/locks/{locksId}",
                          "httpMethod": "DELETE",
                          "scopes": [
                            "https://www.googleapis.com/auth/bigquery",
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "description": "Deletes an existing lock specified by the lock ID.",
                          "response": {
                            "$ref": "Empty"
                          },
                          "parameterOrder": [
                            "name"
                          ],
                          "id": "biglake.projects.locations.catalogs.databases.locks.delete",
                          "parameters": {
                            "name": {
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+/locks/[^/]+$",
                              "required": true,
                              "description": "Required. The name of the lock to delete. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/locks/{lock_id}",
                              "type": "string",
                              "location": "path"
                            }
                          }
                        },
                        "check": {
                          "response": {
                            "$ref": "Lock"
                          },
                          "id": "biglake.projects.locations.catalogs.databases.locks.check",
                          "parameters": {
                            "name": {
                              "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+/locks/[^/]+$",
                              "required": true,
                              "description": "Required. The name of the lock to check. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/locks/{lock_id}",
                              "type": "string",
                              "location": "path"
                            }
                          },
                          "parameterOrder": [
                            "name"
                          ],
                          "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}/locks/{locksId}:check",
                          "httpMethod": "POST",
                          "scopes": [
                            "https://www.googleapis.com/auth/bigquery",
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "description": "Checks the state of a lock specified by the lock ID.",
                          "path": "v1alpha1/{+name}:check",
                          "request": {
                            "$ref": "CheckLockRequest"
                          }
                        }
                      }
                    }
                  },
                  "methods": {
                    "create": {
                      "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases",
                      "httpMethod": "POST",
                      "scopes": [
                        "https://www.googleapis.com/auth/bigquery",
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "description": "Creates a new database.",
                      "path": "v1alpha1/{+parent}/databases",
                      "request": {
                        "$ref": "Database"
                      },
                      "response": {
                        "$ref": "Database"
                      },
                      "id": "biglake.projects.locations.catalogs.databases.create",
                      "parameters": {
                        "parent": {
                          "location": "path",
                          "description": "Required. The parent resource where this database will be created. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}",
                          "type": "string",
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+$",
                          "required": true
                        },
                        "databaseId": {
                          "location": "query",
                          "description": "Required. The ID to use for the database, which will become the final component of the database's resource name.",
                          "type": "string"
                        }
                      },
                      "parameterOrder": [
                        "parent"
                      ]
                    },
                    "delete": {
                      "response": {
                        "$ref": "Database"
                      },
                      "parameterOrder": [
                        "name"
                      ],
                      "id": "biglake.projects.locations.catalogs.databases.delete",
                      "parameters": {
                        "name": {
                          "description": "Required. The name of the database to delete. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}",
                          "type": "string",
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+$",
                          "required": true,
                          "location": "path"
                        }
                      },
                      "path": "v1alpha1/{+name}",
                      "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}",
                      "httpMethod": "DELETE",
                      "scopes": [
                        "https://www.googleapis.com/auth/bigquery",
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "description": "Deletes an existing database specified by the database ID."
                    },
                    "get": {
                      "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}",
                      "httpMethod": "GET",
                      "scopes": [
                        "https://www.googleapis.com/auth/bigquery",
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "description": "Gets the database specified by the resource name.",
                      "path": "v1alpha1/{+name}",
                      "response": {
                        "$ref": "Database"
                      },
                      "parameterOrder": [
                        "name"
                      ],
                      "id": "biglake.projects.locations.catalogs.databases.get",
                      "parameters": {
                        "name": {
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+$",
                          "required": true,
                          "description": "Required. The name of the database to retrieve. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}",
                          "type": "string",
                          "location": "path"
                        }
                      }
                    },
                    "list": {
                      "id": "biglake.projects.locations.catalogs.databases.list",
                      "parameters": {
                        "pageToken": {
                          "description": "A page token, received from a previous `ListDatabases` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDatabases` must match the call that provided the page token.",
                          "type": "string",
                          "location": "query"
                        },
                        "pageSize": {
                          "location": "query",
                          "format": "int32",
                          "description": "The maximum number of databases to return. The service may return fewer than this value. If unspecified, at most 50 databases will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
                          "type": "integer"
                        },
                        "parent": {
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+$",
                          "required": true,
                          "description": "Required. The parent, which owns this collection of databases. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}",
                          "type": "string",
                          "location": "path"
                        }
                      },
                      "parameterOrder": [
                        "parent"
                      ],
                      "response": {
                        "$ref": "ListDatabasesResponse"
                      },
                      "path": "v1alpha1/{+parent}/databases",
                      "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases",
                      "httpMethod": "GET",
                      "scopes": [
                        "https://www.googleapis.com/auth/bigquery",
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "description": "List all databases in a specified catalog."
                    },
                    "patch": {
                      "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}/databases/{databasesId}",
                      "httpMethod": "PATCH",
                      "scopes": [
                        "https://www.googleapis.com/auth/bigquery",
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "description": "Updates an existing database specified by the database ID.",
                      "request": {
                        "$ref": "Database"
                      },
                      "path": "v1alpha1/{+name}",
                      "parameterOrder": [
                        "name"
                      ],
                      "id": "biglake.projects.locations.catalogs.databases.patch",
                      "parameters": {
                        "name": {
                          "location": "path",
                          "description": "Output only. The resource name. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}",
                          "type": "string",
                          "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+/databases/[^/]+$",
                          "required": true
                        },
                        "updateMask": {
                          "location": "query",
                          "format": "google-fieldmask",
                          "description": "The list of fields to update. For the `FieldMask` definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask If not set, defaults to all of the fields that are allowed to update.",
                          "type": "string"
                        }
                      },
                      "response": {
                        "$ref": "Database"
                      }
                    }
                  }
                }
              },
              "methods": {
                "create": {
                  "response": {
                    "$ref": "Catalog"
                  },
                  "parameterOrder": [
                    "parent"
                  ],
                  "id": "biglake.projects.locations.catalogs.create",
                  "parameters": {
                    "catalogId": {
                      "location": "query",
                      "description": "Required. The ID to use for the catalog, which will become the final component of the catalog's resource name.",
                      "type": "string"
                    },
                    "parent": {
                      "description": "Required. The parent resource where this catalog will be created. Format: projects/{project_id_or_number}/locations/{location_id}",
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "required": true,
                      "location": "path"
                    }
                  },
                  "path": "v1alpha1/{+parent}/catalogs",
                  "request": {
                    "$ref": "Catalog"
                  },
                  "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs",
                  "httpMethod": "POST",
                  "scopes": [
                    "https://www.googleapis.com/auth/bigquery",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Creates a new catalog."
                },
                "delete": {
                  "path": "v1alpha1/{+name}",
                  "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}",
                  "httpMethod": "DELETE",
                  "scopes": [
                    "https://www.googleapis.com/auth/bigquery",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Deletes an existing catalog specified by the catalog ID.",
                  "response": {
                    "$ref": "Catalog"
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "id": "biglake.projects.locations.catalogs.delete",
                  "parameters": {
                    "name": {
                      "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+$",
                      "required": true,
                      "description": "Required. The name of the catalog to delete. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}",
                      "type": "string",
                      "location": "path"
                    }
                  }
                },
                "list": {
                  "response": {
                    "$ref": "ListCatalogsResponse"
                  },
                  "id": "biglake.projects.locations.catalogs.list",
                  "parameters": {
                    "pageSize": {
                      "location": "query",
                      "format": "int32",
                      "description": "The maximum number of catalogs to return. The service may return fewer than this value. If unspecified, at most 50 catalogs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
                      "type": "integer"
                    },
                    "parent": {
                      "description": "Required. The parent, which owns this collection of catalogs. Format: projects/{project_id_or_number}/locations/{location_id}",
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "required": true,
                      "location": "path"
                    },
                    "pageToken": {
                      "description": "A page token, received from a previous `ListCatalogs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCatalogs` must match the call that provided the page token.",
                      "type": "string",
                      "location": "query"
                    }
                  },
                  "parameterOrder": [
                    "parent"
                  ],
                  "path": "v1alpha1/{+parent}/catalogs",
                  "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs",
                  "httpMethod": "GET",
                  "scopes": [
                    "https://www.googleapis.com/auth/bigquery",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "List all catalogs in a specified project."
                },
                "get": {
                  "path": "v1alpha1/{+name}",
                  "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/catalogs/{catalogsId}",
                  "httpMethod": "GET",
                  "scopes": [
                    "https://www.googleapis.com/auth/bigquery",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Gets the catalog specified by the resource name.",
                  "response": {
                    "$ref": "Catalog"
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "id": "biglake.projects.locations.catalogs.get",
                  "parameters": {
                    "name": {
                      "location": "path",
                      "description": "Required. The name of the catalog to retrieve. Format: projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}",
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+/catalogs/[^/]+$",
                      "required": true
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "name": "biglake",
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/bigquery": {
          "description": "View and manage your data in Google BigQuery and see the email address for your Google Account"
        },
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account."
        }
      }
    }
  },
  "kind": "discovery#restDescription",
  "baseUrl": "https://biglake.googleapis.com/",
  "canonicalName": "BigLake Service",
  "discoveryVersion": "v1"
}
