> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kinetica.com/llms.txt
> Use this file to discover all available pages before exploring further.

# create_catalog

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/generated/create_catalog.rs#L28-L47)
pub async fn [create\_catalog](https://docs.kinetica.com/content/api/rust/gpudb/struct.Kinetica/create-catalog.md#method.create_catalog)( \&self, name: [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), table\_format: [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), location: [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), type: [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), credential: [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), datasource: [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), ) -> [Result](https://doc.rust-lang.org/1.98.1/core/result/enum.Result.html)\<[CreateCatalogResponse](https://docs.kinetica.com/content/api/rust/generated/api/struct.CreateCatalogResponse.md), [KineticaError](https://docs.kinetica.com/content/api/rust/errors/enum.KineticaError.md)>

Create a catalogCreates a catalog, which contains the location and connection information for a deltalake catalog that is external to the database.

##### Arguments

<ul>
  <li>`name` - Name of the catalog to be created.</li>
  <li>`table_format` - Table format (iceberg, hudi, deltalake).</li>
  <li>`location` - Location of the catalog in ‘http\[s]://\[server\[:port]]]’ format.</li>
  <li>`r#type` - Type of the catalog (REST (unity, polaris, tabular), nessie, hive, glue).</li>
  <li>`credential` - Name of the credential object to be used in catalog.</li>
  <li>`datasource` - Password for the remote system user; may be an empty string.</li>
</ul>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/generated/create_catalog.rs#L67-L93)
pub async fn [create\_catalog\_with\_opts](https://docs.kinetica.com/content/api/rust/gpudb/struct.Kinetica/create-catalog.md#method.create_catalog_with_opts)( \&self, name: [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), table\_format: [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), location: [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), type: [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), credential: [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), datasource: [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), options: [CreateCatalogRequestOptions](https://docs.kinetica.com/content/api/rust/generated/api/struct.CreateCatalogRequestOptions.md), ) -> [Result](https://doc.rust-lang.org/1.98.1/core/result/enum.Result.html)\<[CreateCatalogResponse](https://docs.kinetica.com/content/api/rust/generated/api/struct.CreateCatalogResponse.md), [KineticaError](https://docs.kinetica.com/content/api/rust/errors/enum.KineticaError.md)>

Create a catalogCreates a catalog, which contains the location and connection information for a deltalake catalog that is external to the database.

##### Arguments

<ul>
  <li>`name` - Name of the catalog to be created.</li>
  <li>`table_format` - Table format (iceberg, hudi, deltalake).</li>
  <li>`location` - Location of the catalog in ‘http\[s]://\[server\[:port]]]’ format.</li>
  <li>`r#type` - Type of the catalog (REST (unity, polaris, tabular), nessie, hive, glue).</li>
  <li>`credential` - Name of the credential object to be used in catalog.</li>
  <li>`datasource` - Password for the remote system user; may be an empty string.</li>
  <li>`options` - The optional parameters; any left unset take the server’s defaults.</li>
</ul>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/generated/create_catalog.rs#L96-L107)
pub async fn [create\_catalog\_raw](https://docs.kinetica.com/content/api/rust/gpudb/struct.Kinetica/create-catalog.md#method.create_catalog_raw)( \&self, request: &[CreateCatalogRequest](https://docs.kinetica.com/content/api/rust/generated/api/struct.CreateCatalogRequest.md), ) -> [Result](https://doc.rust-lang.org/1.98.1/core/result/enum.Result.html)\<[CreateCatalogResponse](https://docs.kinetica.com/content/api/rust/generated/api/struct.CreateCatalogResponse.md), [KineticaError](https://docs.kinetica.com/content/api/rust/errors/enum.KineticaError.md)>

Sends a pre-built [`CreateCatalogRequest`](https://docs.kinetica.com/content/api/rust/generated/api/struct.CreateCatalogRequest) to the `/create/catalog` endpoint.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/generated/create_catalog.rs#L111-L123)
pub async fn [create\_catalog\_from\_url](https://docs.kinetica.com/content/api/rust/gpudb/struct.Kinetica/create-catalog.md#method.create_catalog_from_url)( \&self, url: &[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html), request: &[CreateCatalogRequest](https://docs.kinetica.com/content/api/rust/generated/api/struct.CreateCatalogRequest.md), ) -> [Result](https://doc.rust-lang.org/1.98.1/core/result/enum.Result.html)\<[CreateCatalogResponse](https://docs.kinetica.com/content/api/rust/generated/api/struct.CreateCatalogResponse.md), [KineticaError](https://docs.kinetica.com/content/api/rust/errors/enum.KineticaError.md)>

Sends a pre-built [`CreateCatalogRequest`](https://docs.kinetica.com/content/api/rust/generated/api/struct.CreateCatalogRequest) to a specific worker URL, bypassing HA head-node selection. Used for multi-head access.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.