Method: iceberg.v1beta.restcatalog.extensions.projects.catalogs.create

Creates the Iceberg REST Catalog. Currently only supports Google Cloud Storage Bucket catalogs. Google Cloud Storage Bucket catalog id is the bucket for which the catalog is created (e.g. my-catalog for gs://my-catalog).

If the bucket does not exist, of the caller does not have bucket metadata permissions, the catalog will not be created.

HTTP request

POST https://biglake.googleapis.com/iceberg/v1beta/restcatalog/extensions/{parent=projects/*}/catalogs

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
parent

string

Required. The parent resource where this catalog will be created. Format: projects/{projectId}

Query parameters

Parameters
iceberg-catalog-id

string

Required. The name of the catalog.

primary_location

string

Optional. The primary location where the catalog metadata will be stored.

For BigLake catalogs, this specifies the GCP region where the catalog service / metadata lives. If not specified, the region is inferred from the defaultLocation bucket's region. If specified, this defines the catalog's primary location. This region must be in jurisdiction or near the defaultLocation bucket's region and the restrictedLocations buckets' regions.

For Federated catalogs, this is a required field and is the primary location for mirroring the remote catalog metadata. It must be a BigLake-supported location, and it should be proximate to the remote catalog's location for better performance and lower cost.

Request body

The request body contains an instance of IcebergCatalog.

Response body

If successful, the response body contains a newly created instance of IcebergCatalog.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/bigquery
  • https://www.googleapis.com/auth/cloud-platform

For more information, see the Authentication Overview.