Method: dataproductsharing.v1.projects.catalogs.publishDataProduct

Publishes a Knowledge Catalog Data Product or an Iceberg catalog to SAP BDC.

HTTP request

POST https://biglake.googleapis.com/dataproductsharing/v1/{connectionCatalog=projects/*/catalogs/*}:publishDataProduct

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
connectionCatalog

string

Required. The Delta Sharing Catalog containing the SAP BDC enrollment config. Format: projects/{project}/catalogs/{catalog}

Request body

The request body contains data with the following structure:

JSON representation
{
  "share": string,
  "sapFederatedIdentity": string,
  "sapFederatedIdentityProvider": string,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "icebergCatalog": {
    object (IcebergCatalogReference)
  },
  "dataProduct": {
    object (DataProductReference)
  }
  // End of mutually exclusive fields.
}
Fields
share

string

Required. The desired name of the Share as it will be published to SAP BDC.

sapFederatedIdentity

string

Optional. Deprecated. Use sapFederatedIdentityProvider instead.

sapFederatedIdentityProvider

string

Optional. Required. The Workload Identity Federation (WIF) provider resource name representing SAP's federated identity provider. Example:

projects/123456789012/locations/global/workloadIdentityPools/sap-bdc-pool/providers/sap-bdc-provider

When querying LakeHouse tables, SAP BDC will use an identity within this federated identity pool. SAP will construct the subject principal as follows:

principal://iam.googleapis.com/projects//locations//workloadIdentityPools//subject/.

Where is the UUID of the SAP BDC tenant, extracted from the connector endpoint, for example: https://123e4567-e89b-12d3-a456-426614174000.sharing.hdl...

Required. Either a list of tables or a Knowledge Catalog Data Product to publish. The following is a list of mutually exclusive fields. At most one of the fields will be set in a response:
icebergCatalog

object (IcebergCatalogReference)

The BigLake Iceberg REST Catalog whose tables will be published.

dataProduct

object (DataProductReference)

Knowledge Catalog Data Product to publish. The published share's title, short description, and description will be automatically populated from the Knowledge Catalog Data Product metadata.

End of mutually exclusive fields.

Response body

If successful, the response body is empty.

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.

IAM Permissions

Requires the following IAM permission on the connectionCatalog resource:

  • biglake.catalogs.update

Requires the following IAM permission on the catalog resource:

  • biglake.catalogs.get

For more information, see the IAM documentation.

IcebergCatalogReference

Reference to an Iceberg REST Catalog.

JSON representation
{
  "catalog": string,
  "title": string,
  "shortDescription": string,
  "description": string
}
Fields
catalog

string

Required. The fully-qualified BigLake catalog path. Format: projects/{project}/catalogs/{catalog}

title

string

Required. The title of the published share.

shortDescription

string

Required. The short, concise description of the published share.

description

string

Optional. The detailed description of the published share.

DataProductReference

Reference to a Knowledge Catalog Data Product.

JSON representation
{
  "dataProduct": string
}
Fields
dataProduct

string

Required. The fully-qualified resource name of the Knowledge Catalog Data Product. Format: projects/{project}/locations/{location}/dataProducts/{dataProduct}