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

Creates the Iceberg REST Catalog. 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/v1/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 Google Cloud Storage bucket catalogs and BigLake catalogs, if this is not specified, then the region is inferred from the bucket's region (defaultLocation bucket for BigLake catalogs). If specified, the region must be in jurisdiction (near the defaultLocation bucket's region and the restrictedLocations buckets' regions for BigLake catalogs).

For federated catalogs, this must be specified and be a Lakehouse-supported location (https://docs.cloud.google.com/lakehouse/docs/locations). It should be close to the remote catalog's location for the best performance and 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.