# mulesoft Apache Cassandra Connector - Full Documentation --- product: Apache Cassandra Connector version: 4.1 --- # Apache Cassandra Connector 4.1 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for Apache Cassandra (Apache Cassandra Connector) creates connectivity between Apache Cassandra databases and third-party applications, systems, services such as SAP, PeopleSoft, or Workday, as well as other databases across the enterprise. Apache Cassandra is an open source distributed NoSQL database intended to manage large amounts of product, customer, and employee data, which implements the DataStax Java Driver for Apache Cassandra 3.10.1. ## Before You Begin To use this connector, you must be familiar with: - The Apache Cassandra API - Anypoint Connectors - Mule runtime engine (Mule) - Elements and global elements in a Mule flow - Creating a Mule app using Anypoint Studio or Anypoint Code Builder Before creating an app, you must have: - Credentials to access the Apache Cassandra target resource - Mule Enterprise Edition and the entitlements necessary to use this software ## Next Now that you’ve started, try using [Anypoint Studio](https://docs.mulesoft.com/cassandra-connector/4.1/cassandra-connector-studio) to configure the Cassandra connector. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Use Exchange to Discover Connectors, Templates, and Examples](https://docs.mulesoft.com/connectors/introduction/intro-use-exchange) - [Salesforce Help](https://help.salesforce.com) --- product: Apache Cassandra Connector version: 4.1 --- # Apache Cassandra Connector 4.1 Additional Configuration Information > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Configure Anypoint Connector for Apache Cassandra (Apache Cassandra Connector) to work in your environment with basic authentication and DataSense functionality. ## Enable Apache Cassandra Authentication By default, accessing the Apache Cassandra database does not require credentials. You need to configure Apache Cassandra to enable authentication. The Apache Cassandra Connector configuration must match the Apache Cassandra configuration for basic authentication. After enabling authentication, run the `cqlsh` command from the Apache Cassandra installation home directory as shown in this example, which uses default credentials with username `cassandra` and password `cassandra`: ```text bin/cqlsh localhost -u cassandra -p cassandra Connected to Test Cluster at localhost:9042. [cqlsh 5.0.1 | Cassandra 3.10 | CQL spec 3.4.4 | Native protocol v4] Use HELP for help. ``` 1. After installing Apache Cassandra, open the `conf\cassandra.yaml` file for editing. 2. Optionally, change the value of `AllowAllAuthenticator` to `PasswordAuthenticator`. 3. Restart Apache Cassandra. 4. In a separate terminal tab, verify that Apache Cassandra is running: `bin/nodetool status` ## POJO Configuration The connector exposes multiple operations in the Apache Cassandra Connector Reference. The following operations accept some POJOs as input parameters, which are needed for the DataSense functionality: - `addNewColumn` - `changeColumnType` - `createKeyspace` - `createTable` - `deleteColumnsValue` - `deleteRows` - `dropColumn` - `dropKeyspace` - `dropTable` - `executeCQLQuery` - `getTableNamesFromKeyspace` - `renameColumn` - `select` - `update` ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Apache Cassandra Connector version: 4.1 --- # Apache Cassandra Connector 4.1 Examples > For the full documentation index, see: https://docs.mulesoft.com/llms.txt The following examples show how to configure Apache Cassandra Connector: - [Create a New Apache Cassandra Table](#create-table) Creates a template for an HTML form to use to enter data for the new table, creates a keyspace for the new table, and then creates the table - [Manipulate Data in an Apache Cassandra Database](#manipulate-data) Gets table names from a keyspace, performs operations on tables and table columns, executes Cassandra Query Language (CQL) queries, and so on. ## Create a New Apache Cassandra Table This example contains the following flows: - The first flow configures a template for the HTML input form used to convey data for the new table. - The second flow creates the keyspace for the new table. - The third flow creates the new table. This example uses variables for some field values. You can either: - Replace the variables with their values in the code - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see Configuring Property Placeholders. ### Configure a Template for the HTML Input Form This flow configures an HTML template to use for providing HTML input to create the new table: ![Parse Template Flow](/mulesoft/current/en-us/cassandra-connector/4.1/_images/cassandra-parse-template.png) Figure 1. Flow for configuring an HTML template #### Configure HTTP Listener Configure HTTP Listener to initiate a Mule flow when a call is made to the `/` path on port 8081: 1. Create a new Mule Project in Anypoint Studio. 2. In Studio, click **HTTP** and drag the **Listener** operation to the canvas. 3. On the **Listener** properties window, click the plus sign (**+**) next to the **Connector configuration** field to add a global element. 4. Accept the defaults. 5. On the **Listener** properties window, set the **Path** field value to `/`. #### Add a Parse Template Component Add a **Parse Template** component to create a template for an HTML form (`form.html`), which is located in the main resources folder. The example uses this form to convey information for creating the table. 1. From the Mule Palette view, search for `parse` and drag **Core** > **Parse Template** to the right of **Listener**. 2. In the **Location** field, enter `form.html`. ### Create the Keyspace This flow creates the keyspace for the new table: ![Create keyspace flow](/mulesoft/current/en-us/cassandra-connector/4.1/_images/cassandra-create-keyspace.png) Figure 2. Flow for creating a keyspace #### Configure HTTP listener Configure HTTP Listener to initiate a Mule flow when a call is made to the `/test/createKeyspace` path on port `8081`: 1. Create a new Mule Project in Anypoint Studio. 2. In Studio, click **HTTP** and drag the **Listener** operation to the canvas. 3. On the Listener properties window, click the plus sign **+** next to the **Connector configuration** field to add a global element. 4. Accept the defaults. 5. In **Listener** configuration window, set the **Path** field value to `/test/createKeyspace`. #### Add a Transform Message Component Add a **Transform Message** component to set Java variables based on the payload received from **HTTP Listener**: 1. From the Mule Palette view, drag a **Transform Message** component to the right of **Listener**. 2. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```dataweave %dw 2.0 output application/java --- { "keyspaceName": payload.keyspaceName, "replicationFactor": payload.replicationFactor, "replicationStrategyClass": payload.replicationStrategyClass } as Object { class: "org.mule.modules.cassandradb.api.CreateKeyspaceInput" } ``` #### Add the Create Keyspace Operation Add the **Create keyspace** operation to create the keyspace where the new table will reside: 1. From the **Mule Palette** view, select **CassandDB** and drag the **Create keyspace** operation to the right of the **Transform Message** component. 2. In the **Create keyspace** configuration, click the plus sign (**+**) next to the **Connector configuration** field to add a global element. 3. Configure the fields in the global element:
FieldDescription

Host

${cassandra.Host}

Port

${cassandra.Port}

Keyspace

${cassandra.keySpace}

Username

${cassandra.userName}

Password

${cassandra.password}

4. Click **Test Connection** to confirm that Mule can connect with the target Apache Cassandra instance. If the connection is successful, click **OK** to save the configuration. Otherwise, review and correct any invalid parameters and retest. 5. Save the project. 6. Test the app by sending a REST request to the `test/createKeyspace` path on port `8081`. ### Create a New Table This flow creates a new table in the target Apache Cassandra database: ![Create table flow](/mulesoft/current/en-us/cassandra-connector/4.1/_images/cassandra-create-table.png) Figure 3. Flow for creating a new table #### Configure HTTP Listener Configure HTTP Listener to initiate a Mule flow when a call is made to the `/test/createTable` path on port `8081`: 1. Create a new Mule Project in Studio. 2. In Studio, click **HTTP** and drag the **Listener** operation to the canvas. 3. In the **Listener** configuration, click the plus sign **+** next to the **Connector configuration** field to add a global element. 4. Accept the defaults. 5. In the **Listener** configuration, set the **Path** field value to `/test/createTable`. ### Add a Transform Message Component Add a **Transform Component** to set Java variables based on the payload received from **HTTP Listener**: 1. From the Mule Palette view, drag a **Transform Message** component to the right of **Listener**. 2. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```dataweave %dw 2.0 output application/java --- { "columns": payload.columns, "tableName": payload.tableName, "keyspaceName": payload.keyspaceName } as Object { class : "org.mule.modules.cassandradb.api.CreateTableInput" } ``` #### Add the Create Table Operation Add a **Create Table** operation to create a new table in the keyspace you created in the previous flow: 1. From the **Mule Palette** view, select **CassandDB** and drag the **Create Table** operation to the right of the **Transform Message** component. 2. In the **Create Table** configuration, click the plus sign (**+**) next to the **Connector configuration** field. 3. Select the global element that you configured for the **Create keyspace** operation. 4. Click **OK**. 5. Click **Test Connection** to confirm that Mule can connect with the Cassandra instance. If the client test is successful, click **OK** to save the configuration. Otherwise, review and correct any invalid parameters and retest. 6. Save and run the Mule app. 7. Test the app by sending a **POST** command to the `/test/createTable` path on port `8081`. Use the `application/json` MIME type and enter the table description in the command body, using uppercase for the data types: ```text { "tableName": "users", "keyspaceName": "Excelsior", "columns": [ { "name": "id", "type": "INT", "primaryKey": "true" }, { "name": "username", "type": "TEXT", "primaryKey": "true" }, { "name": "name", "type": "TEXT", "primaryKey": "false" }, { "name": "email", "type": "TEXT", "primaryKey": "false" } ] } ``` ### XML for the Create an Apache Cassandra Keyspace and Table Example Paste this code into the Studio XML editor to quickly load the flow for this example into your Mule app: ```xml ``` ## Manipulate Data in an Apache Cassandra Database This example shows the following ways to manipulate data in an Apache Cassandra database: - [Get table names from a keyspace.](#get-table-names) - Perform the following CRUD operations on data in an Apache Cassandra table: - [Insert](#insert) - [Select](#select) - [Update](#update) - [Delete](#delete) - Perform the following operations on an Apache Cassandra table column: - [Delete the column’s value.](#delete-columns) - [Rename a column.](#rename-columns) - [Add a new column.](#add-new-column) - [Drop a column.](#drop-columns) - [Execute a Cassandra Query Language (CQL) query.](#execute-cql) - Drop data from the Apache Cassandra database table: - [Drop a table from a keyspace.](#drop-table) - [Drop a keyspace.](#drop-keyspace) ### Get Table Names from a Keyspace This Mule flow returns all table names from the specified keyspace. ![Studio flow for the Get table names from keyspace operation](/mulesoft/current/en-us/cassandra-connector/4.1/_images/get-table-names.png) In this flow, you configure: - An **HTTP Listener** component - A **Get table names from keyspace** operation - A **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/getTablesFromKeyspace`. #### Add the Get Table Names from Keyspace Operation The **Get table names from keyspace** operation returns all table names from the specified keyspace. 1. Drag the **Get table names from keyspace** operation onto the canvas, next to **HTTP Listener**. 2. In the **Get table names from keyspace** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Get table names from keyspace** properties window:
FieldValue

Keyspace name

#[payload.keyspaceName]

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Get table names from keyspace**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Insert This Mule flow inserts entities in a table in a keyspace. ![Studio flow for the Insert Entity operation](/mulesoft/current/en-us/cassandra-connector/4.1/_images/insert-entity.png) In this flow, you configure: - An **HTTP Listener** component - A **Transform Message** component - An **Insert Entity** operation - A second **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/insert`. #### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace to Java. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **HTTP Listener**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/java --- { "id": payload.id, "name": payload.name, "event": payload.event } ``` #### Add the Insert Entity Operation The **Insert Entity** operation inserts entities into a table in a keyspace. 1. Drag the **Insert Entity** operation onto the canvas, next to **Transform Message**. 2. In the **Insert Entity** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Insert Entity** properties window:
FieldValue

Table

example_table

Keyspace name

example_keyspace

Entity to insert

payload

#### Add the Second Transform Message Component The second **Transform Message** component converts the data from the keyspace from Java to XML. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Insert Entity**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Select This Mule flow executes a **Select** query. ![Studio flow for the Select operation](/mulesoft/current/en-us/cassandra-connector/4.1/_images/select.png) In this flow, you configure: - An **HTTP Listener** component - A **Select** operation - A **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/insert`. #### Add the Select Operation The **Select** operation executes a **Select** query on the keyspace. 1. Drag the **Select** operation onto the canvas, next to **HTTP Listener**. 2. In the **Select** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Select** properties window:
FieldValue

Query

SELECT id, name, event FROM example_keyspace.example_table

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Select**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Update This Mule flow updates entities in a table in a keyspace. ![Studio flow for the Update Entity operation](/mulesoft/current/en-us/cassandra-connector/4.1/_images/update-entity.png) In this flow, you configure: - An **HTTP Listener** component - A **Transform Message** component - An **Update Entity** operation - A second **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/update`. #### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace to Java. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **HTTP Listener**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/java --- { "where":{ id: payload.where }, "columns":payload.columns } ``` #### Add the Update Entity Operation The **Update Entity** operation inserts entities into a table in a keyspace. 1. Drag the **Update Entity** operation onto the canvas, next to **Transform Message**. 2. In the **Update Entity** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Update Entity** properties window:
FieldValue

Table

example_table

Keyspace name

example_keyspace

Entity to insert

payload

#### Add the Second Transform Message Component The second **Transform Message** component converts the data from the keyspace from Java to XML. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Update Entity**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Delete This Mule flow deletes a record from a table in a keyspace. ![Studio flow for the Delete Rows operation](/mulesoft/current/en-us/cassandra-connector/4.1/_images/delete-row.png) In this flow, you configure: - An **HTTP Listener** component - A **Transform Message** component - A **Delete Rows** operation - A second **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/deleteRows`. #### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **HTTP Listener**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/java --- { "where": { id: payload.ids } } ``` #### Add the Delete Rows Operation The **Delete Rows** operation deletes a record. 1. Drag the **Delete Rows** operation onto the canvas, next to **Transform Message**. 2. In the **Delete Rows** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Delete Rows** properties window:
FieldValue

Table

example_table

Keyspace name

example_keyspace

Entity to insert

payload

#### Add the Second Transform Message Component The second **Transform Message** component converts the data from the keyspace from Java to XML. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Delete Rows**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Delete Columns This Mule flow deletes a column’s value from a table in a keyspace. ![Studio flow for the Delete Columns Value operation](/mulesoft/current/en-us/cassandra-connector/4.1/_images/delete-column.png) In this flow, you configure: - An **HTTP Listener** component - A **Transform Message** component - An **Delete Columns Value** operation - A second **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/deleteColumns`. #### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace to Java. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **HTTP Listener**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/java --- { "columns": payload.columns, "where": { id:payload.where } } ``` #### Add the Delete Columns Value Operation The **Delete Columns Value** operation deletes values from an object specified by the **Where clause** field. 1. Drag the **Delete Columns Value** operation onto the canvas, next to **Transform Message**. 2. In the **Delete Columns Value** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Delete Columns Value** properties window:
FieldValue

Table

example_table

Keyspace name

example_keyspace

Entities

Edit inline

Value

#[payload.entities]

Where clause

payload

#### Add the Second Transform Message Component The second **Transform Message** component converts the data from the keyspace from Java to XML. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Delete Columns Value**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Rename Columns This Mule flow renames a column in a table in the specified keyspace. ![Studio flow for the Rename Column operation](/mulesoft/current/en-us/cassandra-connector/4.1/_images/rename-columns.png) In this flow, you configure: - An **HTTP Listener** component - A **Rename Column** operation - A **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/renameColumn`. #### Add the Rename Column Operation The **Rename Column** operation renames a column in a table in a keyspace. 1. Drag the **Rename Column** operation onto the canvas, next to **HTTP Listener**. 2. In the **Rename Column** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Rename Column** properties window:
FieldValue

Table

#[payload.tableName]

Keyspace name

#[payload.keyspaceName]

Old column name

payload.oldName

New column name

#[payload.newName]

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Rename Column**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Add New Columns This Mule flow adds a new column to a table in a keyspace. ![Studio flow for the Add New Table Column operation](/mulesoft/current/en-us/cassandra-connector/4.1/_images/add-new-column.png) In this flow, you configure: - An **HTTP Listener** component - A **Set Variable** component - A second **Set Variable** component - A **Transform Message** component - An **Add New Table Column** operation - A second **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/addNewColumn`. #### Add the Set Variable Component The first **Set Variable** component stores a value for the table name. 1. In the **Mule Palette** view, search for `set variable`. 2. Drag the **Set Variable** component onto the canvas, next to **HTTP Listener**. 3. Configure the following fields in the **Set Variable** properties window:
FieldValue

Name

tableName

Value

#[payload.tableName]

#### Add the Second Set Variable Component The second **Set Variable** component stores a value for the keyspace name. 1. In the **Mule Palette** view, search for `set variable`. 2. Drag the **Set Variable** component onto the canvas, next to **HTTP Listener**. 3. Configure the following fields in the **Set Variable** properties window:
FieldValue

Name

keyspaceName

Value

#[payload.keyspaceName]

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Set Variable**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/java --- { "column": payload.column, "type": payload.'type' } as Object { class : "org.mule.modules.cassandradb.api.AlterColumnInput" } ``` #### Add the Add New Table Column Operation The **Add New Table Column** operation adds a new column. 1. Drag the **Add New Table Column** operation onto the canvas, next to **Transform Message**. 2. In the **Add New Table Column** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Add New Table Column** properties window:
FieldValue

Table

#[vars['tableName']]

Keyspace name

#[vars['keyspaceName']]

Alter column input

payload

#### Add the Second Transform Message Component The second **Transform Message** component converts the data from the keyspace from Java to XML. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Add New Table Column**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Drop Columns This Mule flow removes a column from a table in a keyspace. ![Studio flow for the Drop Column operation](/mulesoft/current/en-us/cassandra-connector/4.1/_images/drop-columns.png) In this flow, you configure: - An **HTTP Listener** component - A **Drop Column** operation - A **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/dropColumn`. #### Add the Drop Column Operation The **Drop Column** operation removes a column. 1. Drag the **Drop Column** operation onto the canvas, next to **HTTP Listener**. 2. In the **Drop Column** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Drop Column** properties window:
FieldValue

Table

#[payload.tableName]

Keyspace name

#[payload.keyspaceName]

Column name

payload.columnName

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Drop Column**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Execute a Cassandra Query Language (CQL) Query This Mule flow executes the specified raw input query. ![Studio flow for the Execute CQL Query operation](/mulesoft/current/en-us/cassandra-connector/4.1/_images/execute-cql.png) In this flow, you configure: - An **HTTP Listener** component - A **Transform Message** component - An **Execute CQL Query** operation - A second **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/executeCqlQuery`. #### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace to Java. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **HTTP Listener**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/java --- { "cqlQuery": payload.cqlQuery, "parameters": payload.parameters } as Object { class : "org.mule.modules.cassandradb.api.CQLQueryInput" } ``` #### Add the Execute CQL Query Operation The **Execute CQL Query** operation executes the raw input query. 1. Drag the **Execute CQL Query** operation onto the canvas, next to **Transform Message**. 2. In the **Execute CQL Query** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. #### Add the Second Transform Message Component The second **Transform Message** component converts the data from the keyspace from Java to XML. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Execute CQL Query**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Drop Table This Mule flow drops a table from the specified keyspace. ![Studio flow for the Drop Table operation](/mulesoft/current/en-us/cassandra-connector/4.1/_images/drop-table.png) In this flow, you configure: - An **HTTP Listener** component - A **Drop Table** operation - A **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/dropTable`. #### Add the Drop Table Operation The **Drop Table** operation drops a table from the specified keyspace. If no keyspace is specified for the **Drop Table** operation, the table is created in the keyspace in the connection parameters. 1. Drag the **Drop Table** operation onto the canvas, next to **HTTP Listener**. 2. In the **Drop Table** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Drop Table** properties window:
FieldValue

Table name

payload.tableName

Keyspace name

#[payload.keyspaceName]

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Drop Table**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Drop Keyspace This Mule flow drops the specified keyspace and its values. ![Studio flow for the Drop Keyspace operation](/mulesoft/current/en-us/cassandra-connector/4.1/_images/drop-keyspace.png) In this flow, you configure: - An **HTTP Listener** component - A **Drop Keyspace** operation - A **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/dropKeyspace`. #### Add the Drop Keyspace Operation The **Drop Keyspace** operation drops the keyspace and its values. 1. Drag the **Drop Keyspace** operation onto the canvas, next to **HTTP Listener**. 2. In the **Drop Keyspace** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Drop Keyspace** properties window:
FieldValue

Keyspace name

payload.keyspaceName

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Drop Keyspace**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### XML for the Manipulate Data in an Apache Cassandra Database Example Paste this code into the Studio XML editor to quickly load the flow for this example into your Mule app: ```xml SELECT id, name, event FROM example_keyspace.example_table ``` ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Apache Cassandra Connector version: 4.1 --- # Apache Cassandra Connector 4.1 Reference > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for Cassandra (Cassandra Connector) implements the DataStax Java Driver for Apache Cassandra 3.1. ## Configurations --- ### Config #### Parameters
NameTypeDescriptionDefault ValueRequired

Name

String

The name for this configuration. Connectors reference the configuration with this name.

x

Connection

Connection authentication types to provide to this configuration.

x

Expiration Policy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This does not mean that the platform expires the instance at the exact moment that it becomes eligible. Mule purges the instances as appropriate.

#### Connection Types ##### Connection ###### Parameters
NameTypeDescriptionDefault ValueRequired

Host

String

Host name or IP address

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

The endpoint identification algorithm used by clients to validate the server host name. The default value is an empty string, which means that the algorithm is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker host name matches the host name in the broker’s certificate.

HTTPS

Port

String

Port

9042

Cassandra Keyspace

String

Cassandra keyspace

Cassandra Cluster Name

String

Cassandra cluster name

Cassandra Cluster Nodes

String

Cassandra cluster nodes (IP or host address and port separated by commas, for example, host1:port1, host2:port2). If the port is not specified, the connector uses the default port, 9042. When you specify this parameter, the host and port from the general settings are ignored.

Username

String

Username for authentication.

Password

String

Password for authentication. If the password is null or all white spaces, the connector won’t use authentication. In this case, the username must also be empty.

Protocol Version

Enumeration, one of:

  • V1

  • V2

  • V3

  • V4

Version of the native protocol supported by the driver.

Max Schema Agreement Wait Seconds

Number

The maximum time to wait for a schema agreement before returning from a DDL query.

0

Compression

Enumeration, one of:

  • LZ4

  • NONE

  • SNAPPY

The compression to use for the transport.

Prepared Statements Cache Size

Number

Cache size for prepared statements. Set a value with at least the number of different statements that you handle in your Mule application.

10

TLS Configuration

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

## Supported Operations - [Add New Table Column](#addNewColumn) - [Change Column Type](#changeColumnType) - [Create Keyspace](#createKeyspace) - [Create Table](#createTable) - [Delete Columns Value](#deleteColumnsValue) - [Delete Rows](#deleteRows) - [Drop Column](#dropColumn) - [Drop Keyspace](#dropKeyspace) - [Drop Table](#dropTable) - [Execute CQL Query](#executeCQLQuery) - [Get All Table Names From Keyspace](#getTableNamesFromKeyspace) - [Insert Entity](#insert) - [Rename Column](#renameColumn) - [Select](#select) - [Update Entity](#update) ### Limitation Cassandra operations do not support frozen column types or other custom column types. When using these column types, use the **Execute CQL Query** operation with a raw CQL query. ### Add New Table Column `` Adds a new column #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table to use for the operation

x

Keyspace Name

String

The keyspace that contains the table to use

Alter Column Input

POJO defining the name of the new column and its data type

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Change Column Type `` Changes the type of a column. To check compatibility, see [CQL type compatibility](https://docs.datastax.com/en/archived/cql/3.1/cql/cql_reference/cql_data_types_c.html). #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table to use for the operation

x

Keyspace Name

String

(optional) The keyspace that contains the table to use

Alter Column Input

POJO defining the name of the column to change and the new data type

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Create Keyspace `` Creates a new keyspace #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Input

Operation input containing the keyspace name and the replication details

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Create Table `` Creates a table (column family) in a specific keyspace. If you don’t specify a keyspace, the connector uses the keyspace used for login. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Create Table Input

The Create Table Input operation, which specifies the table name, keyspace name, and list of columns.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Delete Columns Value `` Deletes values from an object specified by the Where clause #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table

x

Keyspace Name

String

The keyspace that contains the table to use

Entities

Array of String

The columns to delete

x

Where Clause

Object

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Delete Rows `` Deletes an entire record #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table

x

Keyspace Name

String

The keyspace that contains the table to use

Where Clause

Object

The Where clause for the Delete operation

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Drop Column `` Removes a column #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table to use for the operation

x

Keyspace Name

String

The keyspace that contains the table to use

Column Name

String

The name of the column to remove

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Drop Keyspace `` Drops the entire keyspace #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Keyspace Name

String

The name of the keyspace to drop

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Drop Table `` Drops an entire table form the specified keyspace or from the keyspace used for login if no keyspace is specified as an operation parameter. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table Name

String

The name of the table to drop

#[payload]

Keyspace Name

String

The keyspace that contains the table to drop

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Execute CQL Query `` Executes the specified raw input query #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Cql Input

CQL query input that describes the parametrized query to execute along with the query parameters

#[payload]

Target Variable

String

Name of the variable in which to store the operation’s output

Target Value

String

Expression that evaluates the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

#### Output

Type

Array of Object

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Get All Table Names From Keyspace `` Returns all table names from the specified keyspace #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Keyspace Name

String

The name of the keyspace to use on the operation

Target Variable

String

Name of the variable in which to store the operation’s output

Target Value

String

Expression that evaluates the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

#### Output

Type

Array of String

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Insert Entity `` Executes the Insert Entity operation #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table in which to insert the entity

x

Keyspace Name

String

The keyspace that contains the table to use

Entity To Insert

Object

The entity to insert

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Rename Column `` Renames a column #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table to use for the operation

x

Keyspace Name

String

The keyspace that contains the table to use

Old Column Name

String

The name of the column to change

#[payload]

New Column Name

String

The new name of the column

x

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Select `` Executes a select query #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Query

String

The query to execute

#[payload]

Parameters

Array of Any

The query parameters

Target Variable

String

Name of the variable in which to store the operation’s output

Target Value

String

Expression that evaluates the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

#### Output

Type

Array of Object

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Update Entity `` Executes the update entity operation #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table in which to update the entity

x

Keyspace Name

String

The keyspace that contains the table to drop

Entity To Update

Object

The entity to update

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ## Types ### TLS
FieldTypeDescriptionDefault ValueRequired

Enabled Protocols

String

A comma-separated list of protocols enabled for this context.

Enabled Cipher Suites

String

A comma-separated list of cipher suites enabled for this context.

Trust Store

Key Store

Revocation Check

### Trust Store
FieldTypeDescriptionDefault ValueRequired

Path

String

The location (which is resolved relative to the current classpath and file system, if possible) of the trust store.

Password

String

The password used to protect the trust store.

Type

String

The type of store used.

Algorithm

String

The algorithm used by the trust store.

Insecure

Boolean

If true, no certificate validations are performed, rendering connections vulnerable to attacks. Use at your own risk.

### Key Store
FieldTypeDescriptionDefault ValueRequired

Path

String

The location (which is resolved relative to the current classpath and file system, if possible) of the keystore.

Type

String

The type of store used.

Alias

String

When the keystore contains many private keys, this attribute indicates the alias of the key to use. If not defined, the first key in the file is used by default.

Key Password

String

The password used to protect the private key.

Password

String

The password used to protect the keystore.

Algorithm

String

The algorithm used by the keystore.

### Standard Revocation Check
FieldTypeDescriptionDefault ValueRequired

Only End Entities

Boolean

Only verify the last element of the certificate chain.

Prefer Crls

Boolean

Try CRL instead of OCSP first.

No Fallback

Boolean

Do not use the secondary checking method (the one not selected before).

Soft Fail

Boolean

Avoid verification failure when the revocation server cannot be reached or is busy.

### Custom Ocsp Responder
FieldTypeDescriptionDefault ValueRequired

Url

String

The URL of the OCSP responder.

Cert Alias

String

Alias of the signing certificate for the OCSP response (must be in the trust store), if present.

### Crl File
FieldTypeDescriptionDefault ValueRequired

Path

String

The path to the CRL file.

### Reconnection
FieldTypeDescriptionDefault ValueRequired

Fails Deployment

Boolean

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Reconnection Strategy

The reconnection strategy to use.

### Reconnect
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often in milliseconds to reconnect

Count

Number

How many reconnection attempts to make.

### Reconnect Forever
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often, in milliseconds, to reconnect

### Expiration Policy
FieldTypeDescriptionDefault ValueRequired

Max Idle Time

Number

A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it’s considered eligible for expiration

Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

A time unit that qualifies the Max Idle Time attribute

### Alter Column Input
FieldTypeDescriptionDefault ValueRequired

Column

String

Type

Enumeration, one of:

  • ASCII

  • BIGINT

  • BLOB

  • BOOLEAN

  • COUNTER

  • DATE

  • DECIMAL

  • DOUBLE

  • FLOAT

  • INET

  • INT

  • SMALLINT

  • TEXT

  • TIME

  • TIMESTAMP

  • TIMEUUID

  • TINYINT

  • UUID

  • VARCHAR

  • VARINT

### Create Keyspace Input
FieldTypeDescriptionDefault ValueRequired

First Data Center

Keyspace Name

String

Next Data Center

Replication Factor

Number

Replication Strategy Class

Enumeration, one of:

  • SimpleStrategy

  • NetworkTopologyStrategy

### Data Center
FieldTypeDescriptionDefault ValueRequired

Name

String

Value

Number

### Create Table Input
FieldTypeDescriptionDefault ValueRequired

Columns

Array of Column Input

Keyspace Name

String

Table Name

String

### Column Input
FieldTypeDescriptionDefault ValueRequired

Name

String

Primary Key

Boolean

Type

Enumeration, one of:

  • ASCII

  • BIGINT

  • BLOB

  • BOOLEAN

  • COUNTER

  • DATE

  • DECIMAL

  • DOUBLE

  • FLOAT

  • INET

  • INT

  • SMALLINT

  • TEXT

  • TIME

  • TIMESTAMP

  • TIMEUUID

  • TINYINT

  • UUID

  • VARCHAR

  • VARINT

### CQL Query Input
FieldTypeDescriptionDefault ValueRequired

Cql Query

String

Parameters

Array of Any

## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Apache Cassandra Connector version: 4.1 --- # Apache Cassandra Connector 4.1 XML and Maven Support > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Although you can manually code a Mule app in XML, it is more efficient to use Anypoint Studio: If you manually code a Mule runtime engine (Mule) app in XML, either from the Anypoint Studio XML editor or from a text editor, you can access the connector from your app by adding reference statements to both your XML Mule flow and the Apache Maven `pom.xml` file. If you add the connector in Studio, Studio automatically populates the XML code with the connector’s namespace and schema location and it also adds a dependency to the `pom.xml` file. ## Add a Namespace for the Connector Paste the following code inside the `` tag of the header of your configuration XML: ```xml http://www.mulesoft.org/schema/mule/cassandra-db http://www.mulesoft.org/schema/mule/cassandra-db/current/mule-cassandra-db.xsd ``` This example shows how the namespace statements are placed in the `` XML block: ```xml --- FieldDescription

Host

${cassandra.Host}

Port

${cassandra.Port}

Cassandra Keyspace

${cassandra.keySpace}

Username

${cassandra.userName}

Password

${cassandra.password}

On the **Advanced Settings** tab, set **Local Datacenter** when contact points don’t share one datacenter:
FieldDescription

Local Datacenter

${cassandra.localDatacenter}

4. Click **Test Connection** to confirm that Mule can connect with the target Apache Cassandra instance. If the connection is successful, click **OK** to save the configuration. Otherwise, review and correct any invalid parameters and retest. 5. Save the project. 6. Test the app by sending a REST request to the `test/createKeyspace` path on port `8081`. ### Create a New Table This flow creates a new table in the target Apache Cassandra database: ![Create table flow](/mulesoft/current/en-us/cassandra-connector/latest/_images/cassandra-create-table.png) Figure 3. Flow for creating a new table #### Configure HTTP Listener Configure HTTP Listener to initiate a Mule flow when a call is made to the `/test/createTable` path on port `8081`: 1. Create a new Mule Project in Studio. 2. In Studio, click **HTTP** and drag the **Listener** operation to the canvas. 3. In the **Listener** configuration, click the plus sign **+** next to the **Connector configuration** field to add a global element. 4. Accept the defaults. 5. In the **Listener** configuration, set the **Path** field value to `/test/createTable`. ### Add a Transform Message Component Add a **Transform Component** to set Java variables based on the payload received from **HTTP Listener**: 1. From the Mule Palette view, drag a **Transform Message** component to the right of **Listener**. 2. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```dataweave %dw 2.0 output application/java --- { "columns": payload.columns, "tableName": payload.tableName, "keyspaceName": payload.keyspaceName } as Object { class : "com.mulesoft.connector.cassandradb.api.CreateTableInput" } ``` #### Add the Create Table Operation Add a **Create Table** operation to create a new table in the keyspace you created in the previous flow: 1. From the **Mule Palette** view, select **CassandraDB** and drag the **Create Table** operation to the right of the **Transform Message** component. 2. In the **Create Table** configuration, click the plus sign (**+**) next to the **Connector configuration** field. 3. Select the global element that you configured for the **Create keyspace** operation. 4. Click **OK**. 5. Click **Test Connection** to confirm that Mule can connect with the Cassandra instance. If the client test is successful, click **OK** to save the configuration. Otherwise, review and correct any invalid parameters and retest. 6. Save and run the Mule app. 7. Test the app by sending a **POST** command to the `/test/createTable` path on port `8081`. Use the `application/json` MIME type and enter the table description in the command body, using uppercase for the data types: ```text { "tableName": "users", "keyspaceName": "Excelsior", "columns": [ { "name": "id", "type": "INT", "primaryKey": "true" }, { "name": "username", "type": "TEXT", "primaryKey": "true" }, { "name": "name", "type": "TEXT", "primaryKey": "false" }, { "name": "email", "type": "TEXT", "primaryKey": "false" } ] } ``` ### XML for the Create an Apache Cassandra Keyspace and Table Example Paste this code into the Studio XML editor to quickly load the flow for this example into your Mule app: ```xml ``` ## Manipulate Data in an Apache Cassandra Database This example shows the following ways to manipulate data in an Apache Cassandra database: - [Get table names from a keyspace.](#get-table-names) - Perform the following CRUD operations on data in an Apache Cassandra table: - [Insert](#insert) - [Select](#select) - [Update](#update) - [Delete](#delete) - Perform the following operations on an Apache Cassandra table column: - [Delete the column’s value.](#delete-columns) - [Rename a column.](#rename-columns) - [Add a new column.](#add-new-column) - [Drop a column.](#drop-columns) - [Execute a Cassandra Query Language (CQL) query.](#execute-cql) - Drop data from the Apache Cassandra database table: - [Drop a table from a keyspace.](#drop-table) - [Drop a keyspace.](#drop-keyspace) ### Get Table Names from a Keyspace This Mule flow returns all table names from the specified keyspace. ![Studio flow for the Get table names from keyspace operation](/mulesoft/current/en-us/cassandra-connector/latest/_images/get-table-names.png) In this flow, you configure: - An **HTTP Listener** component - A **Get table names from keyspace** operation - A **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/getTablesFromKeyspace`. #### Add the Get Table Names from Keyspace Operation The **Get table names from keyspace** operation returns all table names from the specified keyspace. 1. Drag the **Get table names from keyspace** operation onto the canvas, next to **HTTP Listener**. 2. In the **Get table names from keyspace** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Get table names from keyspace** properties window:
FieldValue

Keyspace name

#[payload.keyspaceName]

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Get table names from keyspace**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Insert This Mule flow inserts entities in a table in a keyspace. ![Studio flow for the Insert Entity operation](/mulesoft/current/en-us/cassandra-connector/latest/_images/insert-entity.png) In this flow, you configure: - An **HTTP Listener** component - A **Transform Message** component - An **Insert Entity** operation - A second **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/insert`. #### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace to Java. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **HTTP Listener**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/java --- { "id": payload.id, "name": payload.name, "event": payload.event } ``` #### Add the Insert Entity Operation The **Insert Entity** operation inserts entities into a table in a keyspace. 1. Drag the **Insert Entity** operation onto the canvas, next to **Transform Message**. 2. In the **Insert Entity** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Insert Entity** properties window:
FieldValue

Table

example_table

Keyspace name

example_keyspace

Entity to insert

payload

#### Add the Second Transform Message Component The second **Transform Message** component converts the data from the keyspace from Java to XML. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Insert Entity**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Select This Mule flow executes a **Select** query. ![Studio flow for the Select operation](/mulesoft/current/en-us/cassandra-connector/latest/_images/select.png) In this flow, you configure: - An **HTTP Listener** component - A **Select** operation - A **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/insert`. #### Add the Select Operation The **Select** operation executes a **Select** query on the keyspace. 1. Drag the **Select** operation onto the canvas, next to **HTTP Listener**. 2. In the **Select** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Select** properties window:
FieldValue

Query

SELECT id, name, event FROM example_keyspace.example_table

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Select**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Update This Mule flow updates entities in a table in a keyspace. ![Studio flow for the Update Entity operation](/mulesoft/current/en-us/cassandra-connector/latest/_images/update-entity.png) In this flow, you configure: - An **HTTP Listener** component - A **Transform Message** component - An **Update Entity** operation - A second **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/update`. #### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace to Java. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **HTTP Listener**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/java --- { "where":{ id: payload.where }, "columns":payload.columns } ``` #### Add the Update Entity Operation The **Update Entity** operation inserts entities into a table in a keyspace. 1. Drag the **Update Entity** operation onto the canvas, next to **Transform Message**. 2. In the **Update Entity** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Update Entity** properties window:
FieldValue

Table

example_table

Keyspace name

example_keyspace

Entity to insert

payload

#### Add the Second Transform Message Component The second **Transform Message** component converts the data from the keyspace from Java to XML. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Update Entity**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Delete This Mule flow deletes a record from a table in a keyspace. ![Studio flow for the Delete Rows operation](/mulesoft/current/en-us/cassandra-connector/latest/_images/delete-row.png) In this flow, you configure: - An **HTTP Listener** component - A **Transform Message** component - A **Delete Rows** operation - A second **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/deleteRows`. #### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **HTTP Listener**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/java --- { "where": { id: payload.ids } } ``` #### Add the Delete Rows Operation The **Delete Rows** operation deletes a record. 1. Drag the **Delete Rows** operation onto the canvas, next to **Transform Message**. 2. In the **Delete Rows** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Delete Rows** properties window:
FieldValue

Table

example_table

Keyspace name

example_keyspace

Entity to insert

payload

#### Add the Second Transform Message Component The second **Transform Message** component converts the data from the keyspace from Java to XML. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Delete Rows**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Delete Columns This Mule flow deletes a column’s value from a table in a keyspace. ![Studio flow for the Delete Columns Value operation](/mulesoft/current/en-us/cassandra-connector/latest/_images/delete-column.png) In this flow, you configure: - An **HTTP Listener** component - A **Transform Message** component - An **Delete Columns Value** operation - A second **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/deleteColumns`. #### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace to Java. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **HTTP Listener**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/java --- { "columns": payload.columns, "where": { id:payload.where } } ``` #### Add the Delete Columns Value Operation The **Delete Columns Value** operation deletes values from an object specified by the **Where clause** field. 1. Drag the **Delete Columns Value** operation onto the canvas, next to **Transform Message**. 2. In the **Delete Columns Value** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Delete Columns Value** properties window:
FieldValue

Table

example_table

Keyspace name

example_keyspace

Entities

Edit inline

Value

#[payload.entities]

Where clause

payload

#### Add the Second Transform Message Component The second **Transform Message** component converts the data from the keyspace from Java to XML. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Delete Columns Value**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Rename Columns This Mule flow renames a column in a table in the specified keyspace. ![Studio flow for the Rename Column operation](/mulesoft/current/en-us/cassandra-connector/latest/_images/rename-columns.png) In this flow, you configure: - An **HTTP Listener** component - A **Rename Column** operation - A **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/renameColumn`. #### Add the Rename Column Operation The **Rename Column** operation renames a column in a table in a keyspace. 1. Drag the **Rename Column** operation onto the canvas, next to **HTTP Listener**. 2. In the **Rename Column** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Rename Column** properties window:
FieldValue

Table

#[payload.tableName]

Keyspace name

#[payload.keyspaceName]

Old column name

payload.oldName

New column name

#[payload.newName]

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Rename Column**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Add New Columns This Mule flow adds a new column to a table in a keyspace. ![Studio flow for the Add New Table Column operation](/mulesoft/current/en-us/cassandra-connector/latest/_images/add-new-column.png) In this flow, you configure: - An **HTTP Listener** component - A **Set Variable** component - A second **Set Variable** component - A **Transform Message** component - An **Add New Table Column** operation - A second **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/addNewColumn`. #### Add the Set Variable Component The first **Set Variable** component stores a value for the table name. 1. In the **Mule Palette** view, search for `set variable`. 2. Drag the **Set Variable** component onto the canvas, next to **HTTP Listener**. 3. Configure the following fields in the **Set Variable** properties window:
FieldValue

Name

tableName

Value

#[payload.tableName]

#### Add the Second Set Variable Component The second **Set Variable** component stores a value for the keyspace name. 1. In the **Mule Palette** view, search for `set variable`. 2. Drag the **Set Variable** component onto the canvas, next to **HTTP Listener**. 3. Configure the following fields in the **Set Variable** properties window:
FieldValue

Name

keyspaceName

Value

#[payload.keyspaceName]

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Set Variable**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/java --- { "column": payload.column, "type": payload.'type' } as Object { class : "com.mulesoft.connector.cassandradb.api.AlterColumnInput" } ``` #### Add the Add New Table Column Operation The **Add New Table Column** operation adds a new column. 1. Drag the **Add New Table Column** operation onto the canvas, next to **Transform Message**. 2. In the **Add New Table Column** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Add New Table Column** properties window:
FieldValue

Table

#[vars['tableName']]

Keyspace name

#[vars['keyspaceName']]

Alter column input

payload

#### Add the Second Transform Message Component The second **Transform Message** component converts the data from the keyspace from Java to XML. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Add New Table Column**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Drop Columns This Mule flow removes a column from a table in a keyspace. ![Studio flow for the Drop Column operation](/mulesoft/current/en-us/cassandra-connector/latest/_images/drop-columns.png) In this flow, you configure: - An **HTTP Listener** component - A **Drop Column** operation - A **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/dropColumn`. #### Add the Drop Column Operation The **Drop Column** operation removes a column. 1. Drag the **Drop Column** operation onto the canvas, next to **HTTP Listener**. 2. In the **Drop Column** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Drop Column** properties window:
FieldValue

Table

#[payload.tableName]

Keyspace name

#[payload.keyspaceName]

Column name

payload.columnName

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Drop Column**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Execute a Cassandra Query Language (CQL) Query This Mule flow executes the specified raw input query. ![Studio flow for the Execute CQL Query operation](/mulesoft/current/en-us/cassandra-connector/latest/_images/execute-cql.png) In this flow, you configure: - An **HTTP Listener** component - A **Transform Message** component - An **Execute CQL Query** operation - A second **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/executeCqlQuery`. #### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace to Java. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **HTTP Listener**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/java --- { "cqlQuery": payload.cqlQuery, "parameters": payload.parameters } as Object { class : "com.mulesoft.connector.cassandradb.api.CQLQueryInput" } ``` #### Add the Execute CQL Query Operation The **Execute CQL Query** operation executes the raw input query. 1. Drag the **Execute CQL Query** operation onto the canvas, next to **Transform Message**. 2. In the **Execute CQL Query** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. #### Add the Second Transform Message Component The second **Transform Message** component converts the data from the keyspace from Java to XML. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Execute CQL Query**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Drop Table This Mule flow drops a table from the specified keyspace. ![Studio flow for the Drop Table operation](/mulesoft/current/en-us/cassandra-connector/latest/_images/drop-table.png) In this flow, you configure: - An **HTTP Listener** component - A **Drop Table** operation - A **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/dropTable`. #### Add the Drop Table Operation The **Drop Table** operation drops a table from the specified keyspace. If no keyspace is specified for the **Drop Table** operation, the table is created in the keyspace in the connection parameters. 1. Drag the **Drop Table** operation onto the canvas, next to **HTTP Listener**. 2. In the **Drop Table** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Drop Table** properties window:
FieldValue

Table name

payload.tableName

Keyspace name

#[payload.keyspaceName]

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Drop Table**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### Drop Keyspace This Mule flow drops the specified keyspace and its values. ![Studio flow for the Drop Keyspace operation](/mulesoft/current/en-us/cassandra-connector/latest/_images/drop-keyspace.png) In this flow, you configure: - An **HTTP Listener** component - A **Drop Keyspace** operation - A **Transform Message** component #### Configure HTTP Listener Configure **HTTP Listener** to initiate a Mule flow when a call is made to the `/` account path on `localhost`, port `8081`. This example uses variables for some field values. You can either: - Replace the variables with their values in the code. - Provide the values for each variable in a properties file and then refer to that file from the connector configuration. If you don’t know how to use a properties file, see [Configuring Property Placeholders](https://docs.mulesoft.com/mule-runtime/latest/mule-app-properties-to-configure). To configure **HTTP Listener**: 1. Create a new Mule project in Studio. 2. In the **Mule Palette** view, search for `http` and select the **Listener** operation: 3. Drag the **Listener** operation onto the canvas. 4. In the **Listener** configuration, click the **Add** icon next to the **Connector configuration** field to add a global element. 5. Click **OK** to accept the defaults. 6. Set the **Path** field to `/dropKeyspace`. #### Add the Drop Keyspace Operation The **Drop Keyspace** operation drops the keyspace and its values. 1. Drag the **Drop Keyspace** operation onto the canvas, next to **HTTP Listener**. 2. In the **Drop Keyspace** configuration, click the **Connector configuration** dropdown and select **CassandraDB\_Config**. 3. Configure the following fields in the **Drop Keyspace** properties window:
FieldValue

Keyspace name

payload.keyspaceName

#### Add the Transform Message Component The **Transform Message** component converts the data from the keyspace. 1. In the **Mule Palette** view, search for `transform message`. 2. Drag the **Transform Message** component onto the canvas, next to **Drop Keyspace**. 3. In the **Transform Message** configuration, overlay the brackets in the **Output** section with this XML: ```xml %dw 2.0 output application/json --- payload ``` ### XML for the Manipulate Data in an Apache Cassandra Database Example Paste this code into the Studio XML editor to quickly load the flow for this example into your Mule app: ```xml SELECT id, name, event FROM example_keyspace.example_table ``` ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Apache Cassandra Connector version: 5.0 is-latest-version: true --- # Apache Cassandra Connector 5.0 Reference > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for Cassandra (Cassandra Connector) implements the DataStax Java Driver for Apache Cassandra 4.17.0. ## Configurations --- ### Config #### Parameters
NameTypeDescriptionDefault ValueRequired

Name

String

The name for this configuration. Connectors reference the configuration with this name.

x

Connection

Connection authentication types to provide to this configuration.

x

Name

String

ID used to reference this configuration.

x

Expiration Policy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This does not mean that the platform expires the instance at the exact moment that it becomes eligible. Mule purges the instances as appropriate.

#### Connection Types ##### Connection ###### Parameters
NameTypeDescriptionDefault ValueRequired

Host

String

Host name or IP address

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

Algorithm that clients use to validate the server host name against the server certificate. The default is DISABLED, which turns hostname validation off and matches version 4.1 behavior, where the setting wasn’t enforced. Set HTTPS or LDAPS to require the certificate Subject Alternative Name or CN to match the host. Enabling validation can reject servers whose certificates don’t include a matching host name.

DISABLED

Port

String

Port

9042

Cassandra Keyspace

String

Cassandra keyspace

Cassandra Cluster Nodes

String

Cassandra cluster nodes (IP or host address and port separated by commas, for example, host1:port1, host2:port2). If the port is not specified, the connector uses the default port, 9042. When you specify this parameter, the host and port from the general settings are ignored.

Username

String

Username for authentication.

Password

String

Password for authentication. If the password is null or all white spaces, the connector won’t use authentication. In this case, the username must also be empty.

Protocol Version

Enumeration, one of:

  • V1

  • V2

  • V3

  • V4

Native protocol version that the driver uses. Don’t select V1 or V2. Those values fail at application initialization. Leave this field unset to let the driver negotiate, including native protocol V5 on Apache Cassandra 5.x. You can also select V3 or V4.

Max Schema Agreement Wait Seconds

Number

The maximum time to wait for a schema agreement before returning from a DDL query.

0

Request Timeout (ms)

Number

Per-request timeout for CQL operations, in milliseconds. The default of 12000 preserves the 12-second deadline from version 4.1. Raise this value for high-latency clusters or heavy DDL. Lower it to fail faster. This timeout is distinct from Max Schema Agreement Wait Seconds, which only bounds the post-DDL schema-agreement poll.

12000

Compression

Enumeration, one of:

  • LZ4

  • NONE

  • SNAPPY

The compression to use for the transport.

Prepared Statements Cache Size

Number

Cache size for prepared statements. Set a value with at least the number of different statements that you handle in your Mule application.

10

Local Datacenter

String

Local datacenter for the driver’s default load-balancing policy. Required when contact points don’t share one datacenter, such as in a multi-DC cluster. You can omit this field for single-DC clusters. If your cluster doesn’t use a single inferred datacenter, set this field or the connection fails.

TLS Configuration

Configures TLS for the Cassandra connection.

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

## Supported Operations - [Add New Table Column](#addNewColumn) - [Change Column Type](#changeColumnType) - [Create Keyspace](#createKeyspace) - [Create Table](#createTable) - [Delete Columns Value](#deleteColumnsValue) - [Delete Rows](#deleteRows) - [Drop Column](#dropColumn) - [Drop Keyspace](#dropKeyspace) - [Drop Table](#dropTable) - [Execute CQL Query](#executeCQLQuery) - [Get All Table Names From Keyspace](#getTableNamesFromKeyspace) - [Insert Entity](#insert) - [Rename Column](#renameColumn) - [Select](#select) - [Update Entity](#update) ### Limitation Cassandra operations do not support frozen column types or other custom column types. When using these column types, use the **Execute CQL Query** operation with a raw CQL query. ### Add New Table Column `` Adds a new column #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table to use for the operation

x

Keyspace Name

String

The keyspace that contains the table to use

Alter Column Input

POJO defining the name of the new column and its data type

#[payload]

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Change Column Type `` Changes the type of a column. To check compatibility, see [CQL type compatibility](https://docs.datastax.com/en/archived/cql/3.1/cql/cql_reference/cql_data_types_c.html). On Apache Cassandra 5.x, **Change Column Type** fails because Cassandra no longer supports altering column types. Add a new column, backfill the data, then drop the old column. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table to use for the operation

x

Keyspace Name

String

(optional) The keyspace that contains the table to use

Alter Column Input

POJO defining the name of the column to change and the new data type

#[payload]

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Create Keyspace `` Creates a new keyspace #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Input

Operation input containing the keyspace name and the replication details

#[payload]

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Create Table `` Creates a table (column family) in a specific keyspace. If you don’t specify a keyspace, the connector uses the keyspace used for login. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Create Table Input

The Create Table Input operation, which specifies the table name, keyspace name, and list of columns.

#[payload]

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Delete Columns Value `` Deletes values from an object specified by the Where clause #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table

x

Keyspace Name

String

The keyspace that contains the table to use

Entities

Array of String

The columns to delete

x

Where Clause

Object

#[payload]

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Delete Rows `` Deletes an entire record #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table

x

Keyspace Name

String

The keyspace that contains the table to use

Where Clause

Object

The Where clause for the Delete operation

#[payload]

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Drop Column `` Removes a column #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table to use for the operation

x

Keyspace Name

String

The keyspace that contains the table to use

Column Name

String

The name of the column to remove

#[payload]

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Drop Keyspace `` Drops the entire keyspace #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Keyspace Name

String

The name of the keyspace to drop

#[payload]

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Drop Table `` Drops an entire table form the specified keyspace or from the keyspace used for login if no keyspace is specified as an operation parameter. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table Name

String

The name of the table to drop

#[payload]

Keyspace Name

String

The keyspace that contains the table to drop

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Execute CQL Query `` Executes the specified raw input query #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Cql Input

CQL query input that describes the parametrized query to execute along with the query parameters

#[payload]

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Target Variable

String

Name of the variable in which to store the operation’s output

Target Value

String

Expression that evaluates the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

#### Output

Type

Array of Object

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Get All Table Names From Keyspace `` Returns all table names from the specified keyspace #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Keyspace Name

String

The name of the keyspace to use on the operation

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Target Variable

String

Name of the variable in which to store the operation’s output

Target Value

String

Expression that evaluates the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

#### Output

Type

Array of String

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Insert Entity `` Executes the Insert Entity operation #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table in which to insert the entity

x

Keyspace Name

String

The keyspace that contains the table to use

Entity To Insert

Object

The entity to insert

#[payload]

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Rename Column `` Renames a column #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table to use for the operation

x

Keyspace Name

String

The keyspace that contains the table to use

Old Column Name

String

The name of the column to change

#[payload]

New Column Name

String

The new name of the column

x

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Select `` Executes a select query #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Query

String

The query to execute

#[payload]

Parameters

Array of Any

The query parameters

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Target Variable

String

Name of the variable in which to store the operation’s output

Target Value

String

Expression that evaluates the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

#### Output

Type

Array of Object

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ### Update Entity `` Executes the update entity operation #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

The name of the configuration to use.

x

Table

String

The name of the table in which to update the entity

x

Keyspace Name

String

The keyspace that contains the table to drop

Entity To Update

Object

The entity to update

#[payload]

Config Ref

ConfigurationProvider

The name of the configuration to use to execute this component

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

A retry strategy in case of connectivity errors

### For Configurations - [Config](#config) #### Throws - CASSANDRA-DB:ALREADY\_EXISTS - CASSANDRA-DB:AUTHENTICATION - CASSANDRA-DB:BOOTSTRAPPING - CASSANDRA-DB:BUSY\_CONNECTION - CASSANDRA-DB:BUSY\_POOL - CASSANDRA-DB:CASSANDRA\_EXECUTION - CASSANDRA-DB:CODEC\_NOT\_FOUND - CASSANDRA-DB:CONNECTION - CASSANDRA-DB:CONNECTIVITY - CASSANDRA-DB:DRIVER\_INTERNAL\_ERROR - CASSANDRA-DB:FRAME\_TOO\_LONG - CASSANDRA-DB:FUNCTION\_EXECUTION - CASSANDRA-DB:INVALID\_CONFIGURATION\_IN\_QUERY - CASSANDRA-DB:INVALID\_QUERY - CASSANDRA-DB:INVALID\_TLS\_CONFIGURATION - CASSANDRA-DB:INVALID\_TYPE - CASSANDRA-DB:NO\_HOST\_AVAILABLE - CASSANDRA-DB:OPERATION\_TIMED\_OUT - CASSANDRA-DB:OVERLOADED - CASSANDRA-DB:PAGING\_STATE - CASSANDRA-DB:PROTOCOL\_ERROR - CASSANDRA-DB:QUERY\_CONSISTENCY - CASSANDRA-DB:QUERY\_ERROR - CASSANDRA-DB:READ\_FAILURE - CASSANDRA-DB:READ\_TIMEOUT - CASSANDRA-DB:RETRY\_EXHAUSTED - CASSANDRA-DB:SERVER\_ERROR - CASSANDRA-DB:SYNTAX\_ERROR - CASSANDRA-DB:TRACE\_RETRIEVAL - CASSANDRA-DB:TRANSPORT - CASSANDRA-DB:TRUNCATE - CASSANDRA-DB:UNAUTHORIZED - CASSANDRA-DB:UNAVAILABLE - CASSANDRA-DB:UNPREPARED - CASSANDRA-DB:UNRESOLVED\_USER\_TYPE - CASSANDRA-DB:UNSUPPORTED\_FEATURE - CASSANDRA-DB:UNSUPPORTED\_PROTOCOL\_VERSION - CASSANDRA-DB:WRITE\_FAILURE - CASSANDRA-DB:WRITE\_TIMEOUT ## Types ### TLS
FieldTypeDescriptionDefault ValueRequired

Enabled Protocols

String

A comma-separated list of protocols enabled for this context.

Enabled Cipher Suites

String

A comma-separated list of cipher suites enabled for this context.

Trust Store

Configures the TLS truststore.

Key Store

Configures the TLS keystore.

Revocation Check

Configures a revocation checking mechanism.

### Trust Store
FieldTypeDescriptionDefault ValueRequired

Path

String

The location (which is resolved relative to the current classpath and file system, if possible) of the trust store.

Password

String

The password used to protect the trust store.

Type

String

The type of store used.

Algorithm

String

The algorithm used by the trust store.

Insecure

Boolean

If true, no certificate validations are performed, rendering connections vulnerable to attacks. Use at your own risk.

### Key Store
FieldTypeDescriptionDefault ValueRequired

Path

String

The location (which is resolved relative to the current classpath and file system, if possible) of the keystore.

Type

String

The type of store used.

Alias

String

When the keystore contains many private keys, this attribute indicates the alias of the key to use. If not defined, the first key in the file is used by default.

Key Password

String

The password used to protect the private key.

Password

String

The password used to protect the keystore.

Algorithm

String

The algorithm used by the keystore.

### Standard Revocation Check
FieldTypeDescriptionDefault ValueRequired

Only End Entities

Boolean

Only verify the last element of the certificate chain.

Prefer Crls

Boolean

Try CRL instead of OCSP first.

No Fallback

Boolean

Do not use the secondary checking method (the one not selected before).

Soft Fail

Boolean

Avoid verification failure when the revocation server cannot be reached or is busy.

### Custom Ocsp Responder
FieldTypeDescriptionDefault ValueRequired

Url

String

The URL of the OCSP responder.

Cert Alias

String

Alias of the signing certificate for the OCSP response (must be in the trust store), if present.

### Crl File
FieldTypeDescriptionDefault ValueRequired

Path

String

The path to the CRL file.

### Reconnection
FieldTypeDescriptionDefault ValueRequired

Fails Deployment

Boolean

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Reconnection Strategy

The reconnection strategy to use.

### Reconnect
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often in milliseconds to reconnect

Blocking

Boolean

If false, the reconnection strategy runs in a separate, non-blocking thread.

Count

Number

How many reconnection attempts to make.

### Reconnect Forever
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often, in milliseconds, to reconnect

Blocking

Boolean

If false, the reconnection strategy runs in a separate, non-blocking thread.

### Expiration Policy
FieldTypeDescriptionDefault ValueRequired

Max Idle Time

Number

A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it’s considered eligible for expiration

Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

A time unit that qualifies the Max Idle Time attribute

### Alter Column Input
FieldTypeDescriptionDefault ValueRequired

Column

String

Type

Enumeration, one of:

  • ASCII

  • BIGINT

  • BLOB

  • BOOLEAN

  • COUNTER

  • DATE

  • DECIMAL

  • DOUBLE

  • FLOAT

  • INET

  • INT

  • SMALLINT

  • TEXT

  • TIME

  • TIMESTAMP

  • TIMEUUID

  • TINYINT

  • UUID

  • VARCHAR

  • VARINT

### Error Mapping Maps source error types to custom error types for an operation.
FieldTypeDescriptionDefault ValueRequired

Source

Enumeration, one of:

  • ANY

  • REDELIVERY_EXHAUSTED

  • TRANSFORMATION

  • EXPRESSION

  • SECURITY

  • CLIENT_SECURITY

  • SERVER_SECURITY

  • ROUTING

  • CONNECTIVITY

  • RETRY_EXHAUSTED

  • TIMEOUT

Source error type to map.

Target

String

Custom error type to map the source error to.

x

### Create Keyspace Input
FieldTypeDescriptionDefault ValueRequired

First Data Center

Keyspace Name

String

Next Data Center

Replication Factor

Number

Replication Strategy Class

Enumeration, one of:

  • SIMPLE_STRATEGY

  • NETWORK_TOPOLOGY_STRATEGY

### Data Center
FieldTypeDescriptionDefault ValueRequired

Name

String

Value

Number

### Create Table Input
FieldTypeDescriptionDefault ValueRequired

Columns

Array of Column Input

Keyspace Name

String

Table Name

String

### Column Input
FieldTypeDescriptionDefault ValueRequired

Name

String

Primary Key

Boolean

Type

Enumeration, one of:

  • ASCII

  • BIGINT

  • BLOB

  • BOOLEAN

  • COUNTER

  • DATE

  • DECIMAL

  • DOUBLE

  • FLOAT

  • INET

  • INT

  • SMALLINT

  • TEXT

  • TIME

  • TIMESTAMP

  • TIMEUUID

  • TINYINT

  • UUID

  • VARCHAR

  • VARINT

### CQL Query Input
FieldTypeDescriptionDefault ValueRequired

Cql Query

String

Parameters

Array of Any

## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Apache Cassandra Connector version: 5.0 is-latest-version: true --- # Apache Cassandra Connector 5.0 XML and Maven Support > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Although you can manually code a Mule app in XML, it is more efficient to use Anypoint Studio: If you manually code a Mule runtime engine (Mule) app in XML, either from the Anypoint Studio XML editor or from a text editor, you can access the connector from your app by adding reference statements to both your XML Mule flow and the Apache Maven `pom.xml` file. If you add the connector in Studio, Studio automatically populates the XML code with the connector’s namespace and schema location and it also adds a dependency to the `pom.xml` file. ## Add a Namespace for the Connector Paste the following code inside the `` tag of the header of your configuration XML: ```xml http://www.mulesoft.org/schema/mule/cassandra-db http://www.mulesoft.org/schema/mule/cassandra-db/current/mule-cassandra-db.xsd ``` This example shows how the namespace statements are placed in the `` XML block: ```xml --- ... ``` 6. Save your application changes. 7. Click the project name in **Package Explorer** and then click **Run** > **Run As** > **Mule Application**. ## Troubleshoot Prepared Statement Cache Size If you receive the following warning message when running your Mule application: --- WARN com.datastax.driver.core.Cluster \[Test-Cluster-worker-23\] Re-preparing already prepared query is generally an anti-pattern and will likely affect performance. Consider preparing the statement only once. --- To avoid the previous message, increase the value of the **Prepared Statement Cache Size** parameter, which enables you to set the cache size for prepared statements. Set a value with at least the number of different statements that you handle in your Mule application. ## See Also - [Salesforce Help](https://help.salesforce.com) - [Known Issues](https://help.salesforce.com/s/issues) --- product: Apache Cassandra Connector version: 5.0 is-latest-version: true --- # Troubleshooting Cassandra Connector > For the full documentation index, see: https://docs.mulesoft.com/llms.txt To troubleshoot Apache Cassandra (Apache Cassandra Connector), become familiar with the information about enabling verbose logging and interpreting commonly thrown messages. ## Enable Verbose Logging To get a better understanding of why an application’s interaction with Cassandra Connector is failing, temporarily enable verbose logging for the module. Remember to always disable the enhanced verbosity after troubleshooting, because it affects your Mule application performance. To enable verbose logging in the configuration file: 1. Access Anypoint Studio and navigate to the **Package Explorer** view. 2. Open your application’s project name. 3. Open the `src/main/resources` path folder. 4. Open the `log4j2.xml` file inside the folder. 5. Add an `` tag inside the `` tag: ```xml ... ... ``` 6. Save your application changes. 7. Click the project name in **Package Explorer** and then click **Run** > **Run As** > **Mule Application**. ## Troubleshoot Prepared Statements Cache Size If you receive the following warning message when running your Mule application: --- WARN com.datastax.oss.driver Re-preparing already prepared query is generally an anti-pattern and will likely affect performance. Consider preparing the statement only once. --- To avoid the previous message, increase the value of the [**Prepared Statements Cache Size**](https://docs.mulesoft.com/cassandra-connector/latest/cassandra-connector-reference#config_connection) field. Set a value with at least the number of different statements that you handle in your Mule application. ## See Also - [Salesforce Help](https://help.salesforce.com) - [Known Issues](https://help.salesforce.com/s/issues) --- product: Apache Cassandra Connector version: 5.0 is-latest-version: true --- # Upgrading and Migrating Cassandra Connector to 5.x > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Upgrade Anypoint Connector for Apache Cassandra (Apache Cassandra Connector) from version 4.x to version 5.x. ## Supported Upgrade Paths
From VersionTo Version

4.x

5.x

## Changes ### 5.0 - This connector now supports Apache Cassandra 5.x. The connector now uses DataStax Java Driver 4.17.0. - The [**Cassandra Cluster Name**](https://docs.mulesoft.com/cassandra-connector/latest/cassandra-connector-reference#config_connection) field is removed from Studio. It no longer appears on the **General** or **Advanced Settings** tab. Applications that still set `clusterName` on `cassandra-db:connection` fail to deploy. Delete the attribute. Contact points and [**Cassandra Cluster Nodes**](https://docs.mulesoft.com/cassandra-connector/latest/cassandra-connector-reference#config_connection) still select the cluster. - The new [**Local Datacenter**](https://docs.mulesoft.com/cassandra-connector/latest/cassandra-connector-reference#config_connection) field is on the **Advanced Settings** tab. It sets the local datacenter for the driver’s load-balancing policy. Set this field when contact points don’t share one datacenter, such as in a multi-DC cluster. You can omit it for single-DC clusters. - The new [**Request Timeout (ms)**](https://docs.mulesoft.com/cassandra-connector/latest/cassandra-connector-reference#config_connection) field is on the **Advanced Settings** tab. It sets the per-request timeout for CQL operations. The default is `12000` milliseconds, which preserves the 12-second deadline from version 4.1. - On Apache Cassandra 5.x, the [**Change Column Type**](https://docs.mulesoft.com/cassandra-connector/latest/cassandra-connector-reference#changeColumnType) operation fails because Cassandra no longer supports altering column types. Add a new column, backfill the data, then drop the old column. - TLS configuration now applies to the driver. The default [**Endpoint identification algorithm**](https://docs.mulesoft.com/cassandra-connector/latest/cassandra-connector-reference#config_connection) is `DISABLED`. If your XML still sets `HTTPS` or `LDAPS`, version 5.0 validates the server certificate against the host. - Don’t select native protocol `V1` or `V2`. Those values fail at application initialization. Leave [**Protocol Version**](https://docs.mulesoft.com/cassandra-connector/latest/cassandra-connector-reference#config_connection) unset to let the driver negotiate, including native protocol V5 on Apache Cassandra 5.x. - These libraries are upgraded to address reported security vulnerabilities: - The `jackson-core` and `jackson-databind` libraries are upgraded to version 2.22.2. - The `netty-codec` library is upgraded to version 4.2.0.Final. - The `netty-handler` library is upgraded to version 4.1.137.Final. - The `guava` library is upgraded to version 32.1.3-jre. - The `jnr-posix` library is upgraded to version 3.2.2. - The `commons-lang3` library is upgraded to version 3.20.0. - The `commons-collections4` library is upgraded to version 4.6.0. ## Requirements Ensure your system meets the following compatibility requirements before you perform the upgrade:
Application/ServiceVersion

Mule runtime

4.6.0 and later

Java

8, 11, and 17

Apache Cassandra

5.x

DataStax Java Driver

4.17.0

Mule versions 4.1 through 4.5 aren’t supported. Applications on these versions must remain on Apache Cassandra Connector 4.1.x. ## Upgrade Prerequisites Before you perform the upgrade, you must: 1. Create a backup of your files, data, and configuration in case you need to restore to the previous version. 2. Ensure that your environment meets the version 5.x requirements, including Mule 4.6.0 or later. 3. Delete `clusterName` from every `cassandra-db:connection` element. If the attribute remains, the app fails to deploy. 4. Set **Local Datacenter** on the **Advanced Settings** tab when the cluster is multi-DC or contact points don’t share one datacenter. 5. Review `tls:context`. The default hostname validation is `DISABLED`. If XML still has `HTTPS` or `LDAPS`, version 5.0 validates the certificate against the host. 6. Leave **Protocol Version** unset, or select `V3` or `V4`. Don’t select `V1` or `V2`. ## Upgrade Steps Follow these steps to perform the upgrade from Apache Cassandra Connector 4.x to Apache Cassandra Connector 5.x: 1. In Anypoint Studio, create a Mule project. 2. In the Mule Palette view, click **Search in Exchange**. 3. In the **Add Dependencies to Project** window, enter `cassandra` in the search field. 4. In the **Available modules** section, select **Cassandra** and click **Add**. 5. Click **Finish**. 6. Verify that the Cassandra Connector dependency version is `5.x.x` in the `pom.xml` file, where `x.x` is the minor release and patch version number. For example, if you are upgrading to v5.0, the dependency version in the `pom.xml` file should be `5.0.0`. Studio upgrades the connector automatically. ## Verify the Upgrade After you install the latest version of the connector, follow these steps to verify the upgrade: 1. In Studio, verify that there are no errors in the **Problems** or **Console** views. 2. Check the project `pom.xml` file and verify that there are no problems. 3. Test the connection and verify that the operations work. ## Troubleshooting If the app fails to deploy, check `cassandra-db:connection` for a `clusterName` attribute and delete it. If the app fails to deploy with an `InitialisationException` that native protocol `V1` or `V2` is no longer supported, leave **Protocol Version** unset, or select `V3` or `V4`. If the connection fails against a multi-DC cluster, set **Local Datacenter** on the **Advanced Settings** tab to the datacenter that contains your contact points. If **Change Column Type** fails with `Altering column types is no longer supported`, you are connected to Apache Cassandra 5.x. Add a new column, backfill the data, then drop the old column. If the TLS handshake fails, the certificate might not match the host. Set **Endpoint identification algorithm** to `DISABLED`, or update the server certificate. ## Revert the Upgrade If it is necessary to revert to the previous version of Apache Cassandra Connector, change the Cassandra Connector dependency version in the project’s `pom.xml` file to the previous version. You must update the project’s `pom.xml` file in Anypoint Studio. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Apache Cassandra Connector version: 4.1 --- # Upgrading and Migrating Cassandra Connector to Version 4.x > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Upgrade Cassandra Connector to version 4.x to use mutual TLS authentication. ## Supported Upgrade Paths
From VersionTo Version

3.x

4.x

## New Features in This Release This release supports Mutual TLS authentication. ## Changes in This Release This release contains the following changes: - Removed the **SSL** field from the configuration and replaced it with **TLS** - Refactored error handling and error types ## Upgrade Prerequisites Before you perform the upgrade, create a backup of your files, data, and configurations in case you need to restore to them. ## Upgrade Steps Follow these steps to perform the upgrade: 1. In Anypoint Studio, create a Mule project. 2. In the **Mule Palette** view, click **Search in Exchange**. 3. In **Add Dependencies to Project**, enter `cassandra` in the search field. 4. In **Available modules**, select **Cassandra** and click **Add**. 5. Click **Finish**. 6. Verify that the Cassandra Connector dependency version is `<4.0.0>` in the `pom.xml` file in the Mule project. Studio upgrades the connector automatically. ### Verify the Upgrade After you install the latest version of the connector, follow these steps to verify the upgrade: 1. In Studio, verify that there are no errors in the **Problems** or **Console** views. 2. Verify that there are no problems in the project `pom.xml` file. 3. Test the connection to verify that the operations work. ## Revert the upgrade If it is necessary to revert to the previous version of Cassandra Connector, change the `cassandra-connector` dependency version in the project’s `pom.xml` file to the previous version. You must update the project’s `pom.xml` file in Anypoint Studio. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Apache Cassandra Connector version: 4.1 --- # Using Anypoint Studio to Configure Apache Cassandra Connector 4.1 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files. To add and configure a connector in Studio: - [Create a Mule project](#create-mule-project). - [Add the connector to your Mule project](#add-connector-to-project). - [Configure a source for the connector’s flow](#configure-input-source). - [Add a connector operation to the flow](#add-connector-operation). - [Configure a global element for the connector](#configure-global-element). - [Configure the other connector fields](#configure-other-fields). When you run the connector, you can view the app log to check for problems, as described in [View the App Log](#view-app-log). If you are new to configuring connectors in Studio, see [Using Anypoint Studio to Configure a Connector](https://docs.mulesoft.com/connectors/introduction/intro-config-use-studio). If, after reading this topic, you need additional information about the connector fields, see the [Reference](https://docs.mulesoft.com/cassandra-connector/4.1/cassandra-connector-reference). ## Create a Mule Project In Studio, create a new Mule project in which to add and configure the connector: 1. In Studio, select **File > New > Mule Project**. 2. Enter a name for your Mule project and click **Finish**. ## Add the Connector to Your Mule Project Add Apache Cassandra Connector to your Mule project to automatically populate the XML code with the connector’s namespace and schema location and to add the required dependencies to the project’s `pom.xml` file: 1. In the **Mule Palette** view, click **(X) Search in Exchange**. 2. In the **Add Dependencies to Project** window, type `cassandra` in the search field. 3. Click **CassandraDB** in **Available modules**. 4. Click **Add**. 5. Click **Finish**. Adding a connector to a Mule project in Studio does not make that connector available to other projects in your Studio workspace. ## Configure a Source A source initiates a flow when a specified condition is met. You can configure one of these sources to use with Apache Cassandra Connector: - **HTTP Listener** Initiates a flow each time it receives a request on the configured host and port - **Scheduler** Initiates a flow when a time-based condition is met For example, to configure an HTTP listener, follow these steps: 1. In the **Mule Palette** view, select **HTTP > Listener**. 2. Drag **Listener** to the Studio canvas. 3. On the **Listener** configuration screen, optionally change the value of the **Display Name** field. 4. Specify a value for the **Path** field. 5. Click the plus sign (**+**) next to the **Connector configuration** field to configure a global element that can be used by all instances of the HTTP listener in the app. 6. On the **General** tab, specify the connection information for the listener. 7. On the **TLS** tab, optionally specify the TLS information for the listener. 8. On the **Advanced** tab, optionally specify reconnection information, including a reconnection strategy. 9. Click **Test Connection** to confirm that Mule can connect with the specified server. 10. Click **OK**. ## Add a Connector Operation to the Flow When you add a connector operation to your flow, you immediately define a specific operation for that connector to perform. To add an operation for Apache Cassandra Connector, follow these steps: 1. In the **Mule Palette** view, select **CassandraDB** and then select the desired operation. 2. Drag the operation onto the Studio canvas and to the right of the source. ## Configure a Global Element for the Connector When you configure a connector, it’s best to configure a global element that all instances of that connector in the app can use. If an Apache Cassandra database has authentication enabled, you must provide credentials when accessing it from the connector. Apache Cassandra supports basic authentication only. To provide credentials to an Apache Cassandra database, enter the corresponding values in the Apache Cassandra Connector global element. To configure the global element for Apache Cassandra Connector, follow these steps: 1. Select the operation in the Studio canvas. 2. In the configuration screen for the operation, click the plus sign (**+**) next to the **Connector configuration** field to access the global element configuration fields. 3. On the **General** tab, complete the following fields:
FieldDescription

Host

Host name, or IP address of an Apache Cassandra node

Port

Port number. The default port is 9042.

If the target database has authentication enabled, you must also complete these fields:
FieldDescription

Keyspace

Apache Cassandra keyspace

Username

Apache Cassandra user name

Password

Apache Cassandra password

You can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your authorization credentials in the global configuration properties. For information about the benefits of using property placeholders and how to configure them, see [Anypoint Connector Configuration](https://docs.mulesoft.com/connectors/introduction/intro-connector-configuration-overview). 4. On the **Advanced** tab, optionally specify reconnection information, including a reconnection strategy. 5. Optionally, configure a connection that uses Mutual TLS by completing these fields on the Security tab:
FieldDescription

Endpoint Identification Algorithm

The endpoint identification algorithm used by clients to validate server host name. The default value is an empty string, which means it is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker host name matches the host name in the brokers certificate.

TLS Configuration

Defines a configuration for TLS, which can be used from both the client and server sides to secure communication for the Mule app. When using the HTTPS protocol, the HTTP communication is secured using TLS or SSL. If HTTPS is configured as the protocol then, at a minimum, the user must configure the keystore in the tls:context child element of the listener-config.

6. Click **Test Connection** to confirm that Mule can connect with the specified server. 7. Click **OK**. ## Configure Additional Connector Fields After you configure a global element for Apache Cassandra Connector, configure the other required fields for the connector. The required fields vary depending on which connector operation you use. ## View the App Log To check for problems, you can view the app log as follows: - If you’re running the app from Anypoint Platform, the output is visible in the Anypoint Studio console window. - If you’re running the app using Mule from the command line, the app log is visible in your OS console. Unless the log file path is customized in the app’s log file (`log4j2.xml`), you can also view the app log in the default location `MULE_HOME/logs/.log`. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Apache Cassandra Connector version: 5.0 is-latest-version: true --- # Using Anypoint Studio to Configure Apache Cassandra Connector 5.0 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files. To add and configure a connector in Studio: - [Create a Mule project](#create-mule-project). - [Add the connector to your Mule project](#add-connector-to-project). - [Configure a source for the connector’s flow](#configure-input-source). - [Add a connector operation to the flow](#add-connector-operation). - [Configure a global element for the connector](#configure-global-element). - [Configure the other connector fields](#configure-other-fields). When you run the connector, you can view the app log to check for problems, as described in [View the App Log](#view-app-log). If you are new to configuring connectors in Studio, see [Using Anypoint Studio to Configure a Connector](https://docs.mulesoft.com/connectors/introduction/intro-config-use-studio). If, after reading this topic, you need additional information about the connector fields, see the [Reference](https://docs.mulesoft.com/cassandra-connector/latest/cassandra-connector-reference). ## Create a Mule Project In Studio, create a new Mule project in which to add and configure the connector: 1. In Studio, select **File > New > Mule Project**. 2. Enter a name for your Mule project and click **Finish**. ## Add the Connector to Your Mule Project Add Apache Cassandra Connector to your Mule project to automatically populate the XML code with the connector’s namespace and schema location and to add the required dependencies to the project’s `pom.xml` file: 1. In the **Mule Palette** view, click **(X) Search in Exchange**. 2. In the **Add Dependencies to Project** window, type `cassandra` in the search field. 3. Click **CassandraDB** in **Available modules**. 4. Click **Add**. 5. Click **Finish**. Adding a connector to a Mule project in Studio does not make that connector available to other projects in your Studio workspace. ## Configure a Source A source initiates a flow when a specified condition is met. You can configure one of these sources to use with Apache Cassandra Connector: - **HTTP Listener** Initiates a flow each time it receives a request on the configured host and port - **Scheduler** Initiates a flow when a time-based condition is met For example, to configure an HTTP listener, follow these steps: 1. In the **Mule Palette** view, select **HTTP > Listener**. 2. Drag **Listener** to the Studio canvas. 3. On the **Listener** configuration screen, optionally change the value of the **Display Name** field. 4. Specify a value for the **Path** field. 5. Click the plus sign (**+**) next to the **Connector configuration** field to configure a global element that can be used by all instances of the HTTP listener in the app. 6. On the **General** tab, specify the connection information for the listener. 7. On the **TLS** tab, optionally specify the TLS information for the listener. 8. On the **Advanced** tab, optionally specify reconnection information, including a reconnection strategy. 9. Click **Test Connection** to confirm that Mule can connect with the specified server. 10. Click **OK**. ## Add a Connector Operation to the Flow When you add a connector operation to your flow, you immediately define a specific operation for that connector to perform. To add an operation for Apache Cassandra Connector, follow these steps: 1. In the **Mule Palette** view, select **CassandraDB** and then select the desired operation. 2. Drag the operation onto the Studio canvas and to the right of the source. ## Configure a Global Element for the Connector When you configure a connector, it’s best to configure a global element that all instances of that connector in the app can use. If an Apache Cassandra database has authentication enabled, you must provide credentials when accessing it from the connector. Apache Cassandra supports basic authentication only. To provide credentials to an Apache Cassandra database, enter the corresponding values in the Apache Cassandra Connector global element. To configure the global element for Apache Cassandra Connector, follow these steps: 1. Select the operation in the Studio canvas. 2. In the configuration screen for the operation, click the plus sign (**+**) next to the **Connector configuration** field to access the global element configuration fields. 3. On the **General** tab, complete the following fields:
FieldDescription

Host

Host name or IP address of an Apache Cassandra node

Port

Port number. The default port is 9042.

If the target database has authentication enabled, you must also complete these fields:
FieldDescription

Cassandra Keyspace

Apache Cassandra keyspace

Username

Username for authentication

Password

Password for authentication

You can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your authorization credentials in the global configuration properties. For information about the benefits of using property placeholders and how to configure them, see [Anypoint Connector Configuration](https://docs.mulesoft.com/connectors/introduction/intro-connector-configuration-overview). 4. On the **Advanced Settings** tab, complete these fields when required:
FieldDescription

Cassandra Cluster Nodes

Contact points that select the cluster.

Protocol Version

Native protocol version that the driver uses. Don’t select V1 or V2. Leave this field unset to let the driver negotiate, including native protocol V5 on Apache Cassandra 5.x. See Configure the Protocol Version.

Request Timeout (ms)

Per-request timeout for CQL operations, in milliseconds. The default is 12000. See Configure the Request Timeout.

Local Datacenter

Local datacenter for the driver’s load-balancing policy. Set this field when contact points don’t share one datacenter, such as in a multi-DC cluster. You can omit it for single-DC clusters. See Configure the Local Datacenter.

The **Advanced Settings** tab also includes **Max Schema Agreement Wait Seconds**, **Compression**, and **Prepared Statements Cache Size**. For field details, see [Connection](https://docs.mulesoft.com/cassandra-connector/latest/cassandra-connector-reference#config_connection). 5. Optionally, configure a connection that uses TLS by completing these fields on the **Security** tab:
FieldDescription

Endpoint identification algorithm

Algorithm that clients use to validate the server host name against the server certificate. The default is DISABLED. Set HTTPS or LDAPS to require the certificate to match the host.

TLS Configuration

TLS context for the Cassandra connection. Version 5.0 applies the keystore, truststore, and hostname validation settings to the driver.

6. On the **Advanced** tab, optionally specify reconnection information, including a reconnection strategy. 7. Click **Test Connection** to confirm that Mule can connect with the specified server. 8. Click **OK**. ## Configure Additional Connector Fields After you configure a global element for Apache Cassandra Connector, configure the other required fields for the connector. The required fields vary depending on which connector operation you use. ## View the App Log To check for problems, you can view the app log as follows: - If you’re running the app from Anypoint Platform, the output is visible in the Anypoint Studio console window. - If you’re running the app using Mule from the command line, the app log is visible in your OS console. Unless the log file path is customized in the app’s log file (`log4j2.xml`), you can also view the app log in the default location `MULE_HOME/logs/.log`. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com)