Skip to main content Skip to footer

Snowflake Executer Documentation

Version: 4.0.0

Retrieved: 2025-10-09 15:16:21


Snowflake Executer

This modules executes a raw SQL statement.

Settings

Name Requirements Purpose Default
Target Property Not null The property that contains the result. result
SQL Statement Not null The SQL statement to execute.  
Request Type     Query

Credential

This module needs a credential of type 'ConnectionString' or 'ConnectionStringWithCert' to connect to the database server. Use the following format.

Simple connection string:

account=<instance>.north-europe.azure;user=username;Password=pwd!;

Connection string with proxy:

account=<instance>.north-europe.azure;user=username;Password=Crosser2024!;useProxy=true;proxyHost=192.168.178.30;proxyPort=8888;proxyUser=crosser;proxyPassword=crosser_pwd;

Connection string with certificate:

account=<instance>.north-europe.azure;user=username

private key in PEM format to avoid issue with escaping characters in certificate-file '\n'

Connection string with certicate and proxy:

account=<instance>.north-europe.azure;user=username;useProxy=true;proxyHost=192.168.8.3;proxyPort=8888;proxyUser=crosser;proxyPassword=pwd;'

private key in PEM format to avoid issue with escaping characters in certificate-file '\n'

In order to use certificate you have to create your own certificate set with private_key and public_key. The public_key has to be assigned to the snowflake user in 'Snowflake SQL worksheet'. The private_key is the one required by the module. Make sure the private_key is in the format of PEM to avoid issues with escaping characters (\n).

Note: When using JWT authentication (certificate-based), connection pooling is automatically disabled to prevent issues with token expiration. The module will automatically append poolingEnabled=false to the connection string if not already specified.

If no default warehouse is set for the user, the warehouse parameter has to be set in the connection string.

account=xyz.north-europe.azure;user=crosser;password=password;warehouse=warehouse1

To get your Snowflake account, go to your organization information in the bottom left corner and click on the link symbol. Copy this information and remove the first part (https://) and also the last part (snowflakecomputing.com).

Input

Any input message can be used to trigger execution of the SQL statement. Properties in the message can be referenced in the SQL statement using @ syntax. If message properties are used in the SQL statement they must be present on the incoming message.

Output

An output message will be sent each time the module receives a message.

Name Type Description
crosser.success Boolean True if the message was stored properly in the database, otherwise False.
crosser.message String Contains a error message in case the insert failed, if the insert is successful this property is not set.
Target Property Object array Will contains the number of rows affected in case of a command, and the result in case of a query.

Examples

Example 1

Select and return all rows containg a temp larger then data.temp on the incoming message:

# Settings

Target Property: out

SQL Statement: SELECT * FROM temps WHERE temp > @data.temp;

Request Type: query

# Input

{
  "data": {
      "temp": 50
  }
}



# Output

{
  "data": {
      "temp": 50
  },
  "out": [
    {
        "name": "sensor3",
        "temp": 129
    },
    {
        "name": "sensor4",
        "temp": 489
    }
  ],
  "crosser": {
      "success": true
  }
}

Example 2

Delete all readings in the 'temps' table:

# Settings

Target Property: out

SQL Statement: DELETE FROM temps;

Request Type: command

# Input

{
  "data": {
      "temp": 50
  }
}



# Output

{
  "data": {
      "temp": 50
  },
  "out": {
      "rowCount": 0
  },
  "crosser": {
      "success": true
  }
}