REST, FILE_BASED, DATABRICKS_UNITY (as syntactic sugar on top of REST), SNOWFLAKE_OPEN_CATALOG (a REST-shaped catalog), and AWS_GLUE. Each catalog accepts a different set of parameters and credentials.
Syntax
Parameters
Common Parameters
Iceberg Parameters
AWS Authentication Parameters
Use AWS authentication parameters forFILE_BASED and AWS_GLUE catalogs.
OAuth Authentication Parameters
Use OAuth authentication parameters forREST, DATABRICKS_UNITY, or SNOWFLAKE_OPEN_CATALOG catalogs.
Iceberg Catalog-Specific Parameters
FILE_BASED Catalog
REST Catalog
SNOWFLAKE_OPEN_CATALOG Catalog
Snowflake Open Catalog is aREST-shaped catalog and takes the same parameters as REST.
DATABRICKS_UNITY Catalog
AWS_GLUE Catalog
Examples
File-based catalog
Used to access Iceberg tables directly from S3. For file-based Iceberg catalogs, use AWS key-based or role-based authentication inCREDENTIALS.
With access key and secret:
For role-based AWS access you can additionally set an external ID. An external ID is a value you choose and control that AWS checks when Firebolt assumes your role, adding a second condition on top of your account’s unique IAM principal. Configuring one is a recommended best practice. See IAM roles.
REST catalog
Used to access Iceberg in REST catalogs, that implement the Iceberg REST API spec. For generic REST Iceberg catalogs, use OAuth parameters forCREDENTIALS.
STORAGE_CREDENTIALS with AWS object-storage credentials, used as a fallback if the catalog does not have credential vending enabled.
STORAGE_CREDENTIALS also accepts role-based AWS authentication (AWS_ROLE_ARN, optional AWS_ROLE_EXTERNAL_ID) and works the same way on DATABRICKS_UNITY and SNOWFLAKE_OPEN_CATALOG locations.
Databricks Unity Catalog
Used to access Iceberg tables in a Databricks Unity Catalog. Offered as syntactic sugar on top ofCATALOG = REST, for users who may be more familiar with Databricks Unity Catalog terminology.
For configuring Unity Catalog in your Databricks workspace, see Databricks - Set up and manage Unity Catalog. Note that you will need to enable credential vending in your Unity Catalog, see Databricks - Unity Catalog credential vending for external system access.
For general information about reading Databricks tables from Iceberg clients, see Databricks - Read Databricks tables from Iceberg clients.
For Databricks Unity Catalogs, use OAuth parameters for CREDENTIALS.
BEARER_TOKEN parameter.
Snowflake Open catalog
Iceberg tables in Snowflake Open Catalog can be read by using aLOCATION with CATALOG = SNOWFLAKE_OPEN_CATALOG, a REST-shaped catalog.
For setting up a Snowflake Open Catalog in your account, see Snowflake - Snowflake Open Catalog overview. Note that you will need to enable credential vending for your Iceberg tables, see Snowflake - Use catalog-vended credentials for Apache Iceberg™ tables.
For general information about reading Snowflake Open Catalog tables from Iceberg clients, see Snowflake - Checking your REST catalog configuration.
For Snowflake Open catalogs, use OAuth parameters for CREDENTIALS.
AWS Glue catalog
Used to access Iceberg tables in AWS Glue Data Catalog. With access key and secret:For role-based AWS access you can additionally set an external ID. An external ID is a value you choose and control that AWS checks when Firebolt assumes your role, adding a second condition on top of your account’s unique IAM principal. Configuring one is a recommended best practice. See IAM roles.
GetDataAccess permission - see AWS Lake Formation: Underlying data access control.