Share post
Share post
Share post
Blog: Technical Guides
Using Omnata to send Snowflake Marketplace listing events to Slack
Using Omnata to send Snowflake Marketplace listing events to Slack
Partnerships |
Snowflake
By:
24 June 2025
At Omnata, we push all of our Snowflake Marketplace events to Slack as a primary workspace.
We have a shared channel between our sales and Snowflake partner team to collaborate on new opportunities, free trials and closed won deals.
We are working on adding support for Microsoft Teams (contact us to request access)
How to do this using Omnata
There are a few simple steps to configuring this for your provider account.
Install the Omnata Sync Engine and the Slack Plugin from the Snowflake Marketplace
Create an outbound sync source view off the Snowflake’s Listing Event table
Configure an outbound sync(s) to your Slack channels
Sit back and watch your installs and purchase notifications roll in
Install the Omnata native apps
Omnata Sync Engine - This is the main control pane for connections, sync configurations and monitoring.
Omnata Slack Plugin - This is the connector to the Slack endpoints and it will cost you $4/day.
Create a view of the Listing Events tables that will work for Omnata outbound syncs.
Omnata manages the incremental records that need to be push to destinations. For this, your table needs a Unique ID and you can add in any other fields you want to appear in the Slack message.
Here is a basic template to fire trial notifications, you can get as creative as you like with other information from Snowflake.
--Create a view of SNOWFLAKE.DATA_SHARING_USAGE.LISTING_EVENTS_DAILY structured for outbound syncs with Slack
SELECT
-- Date and timestamp fields
event_date,
event_timestamp,
-- Exchange and listing information
exchange_name,
event_type,
snowflake_region,
listing_name,
listing_display_name,
listing_global_name,
-- Consumer information
consumer_account_locator,
consumer_account_name,
consumer_organization,
consumer_email,
terms_accepted_date,
consumer_metadata,
region_group,
-- Parsed consumer name
consumer_name,
PARSE_JSON(consumer_metadata):first_name::STRING AS first_name,
PARSE_JSON(consumer_metadata):last_name::STRING AS last_name,
-- Creates a unique ID
CONCAT(
event_type,
event_timestamp,
terms_accepted_date,
listing_global_name,
consumer_account_locator
) AS unique_id,
--Counts events
ROW_NUMBER() OVER (ORDER BY event_timestamp, listing_global_name, consumer_account_locator) AS row_number
FROM SNOWFLAKE.DATA_SHARING_USAGE.LISTING_EVENTS_DAILY
WHERE
event_type = 'TRIAL' -- or add any other event types here
--AND event_date > '2025-01-31'
;
Configure the outbound sync to Slack
Omnata’s configuration wizard steps you through the process of creating an outbound sync. For Slack, it’s quite simple, Omnata will post a message whenever a new record appears in the source table.
You can add any Snowflake column in the source table as a field in the Jinja template.

Omnata runs on a schedule either with uniform gaps or on a cron schedule. We run ours four times a day on a cron schedule to pick up any events that drop into the Listing Events table during business hours.

Watch those notifications roll in…

At Omnata, we push all of our Snowflake Marketplace events to Slack as a primary workspace.
We have a shared channel between our sales and Snowflake partner team to collaborate on new opportunities, free trials and closed won deals.
We are working on adding support for Microsoft Teams (contact us to request access)
How to do this using Omnata
There are a few simple steps to configuring this for your provider account.
Install the Omnata Sync Engine and the Slack Plugin from the Snowflake Marketplace
Create an outbound sync source view off the Snowflake’s Listing Event table
Configure an outbound sync(s) to your Slack channels
Sit back and watch your installs and purchase notifications roll in
Install the Omnata native apps
Omnata Sync Engine - This is the main control pane for connections, sync configurations and monitoring.
Omnata Slack Plugin - This is the connector to the Slack endpoints and it will cost you $4/day.
Create a view of the Listing Events tables that will work for Omnata outbound syncs.
Omnata manages the incremental records that need to be push to destinations. For this, your table needs a Unique ID and you can add in any other fields you want to appear in the Slack message.
Here is a basic template to fire trial notifications, you can get as creative as you like with other information from Snowflake.
--Create a view of SNOWFLAKE.DATA_SHARING_USAGE.LISTING_EVENTS_DAILY structured for outbound syncs with Slack
SELECT
-- Date and timestamp fields
event_date,
event_timestamp,
-- Exchange and listing information
exchange_name,
event_type,
snowflake_region,
listing_name,
listing_display_name,
listing_global_name,
-- Consumer information
consumer_account_locator,
consumer_account_name,
consumer_organization,
consumer_email,
terms_accepted_date,
consumer_metadata,
region_group,
-- Parsed consumer name
consumer_name,
PARSE_JSON(consumer_metadata):first_name::STRING AS first_name,
PARSE_JSON(consumer_metadata):last_name::STRING AS last_name,
-- Creates a unique ID
CONCAT(
event_type,
event_timestamp,
terms_accepted_date,
listing_global_name,
consumer_account_locator
) AS unique_id,
--Counts events
ROW_NUMBER() OVER (ORDER BY event_timestamp, listing_global_name, consumer_account_locator) AS row_number
FROM SNOWFLAKE.DATA_SHARING_USAGE.LISTING_EVENTS_DAILY
WHERE
event_type = 'TRIAL' -- or add any other event types here
--AND event_date > '2025-01-31'
;
Configure the outbound sync to Slack
Omnata’s configuration wizard steps you through the process of creating an outbound sync. For Slack, it’s quite simple, Omnata will post a message whenever a new record appears in the source table.
You can add any Snowflake column in the source table as a field in the Jinja template.

Omnata runs on a schedule either with uniform gaps or on a cron schedule. We run ours four times a day on a cron schedule to pick up any events that drop into the Listing Events table during business hours.

Watch those notifications roll in…

At Omnata, we push all of our Snowflake Marketplace events to Slack as a primary workspace.
We have a shared channel between our sales and Snowflake partner team to collaborate on new opportunities, free trials and closed won deals.
We are working on adding support for Microsoft Teams (contact us to request access)
How to do this using Omnata
There are a few simple steps to configuring this for your provider account.
Install the Omnata Sync Engine and the Slack Plugin from the Snowflake Marketplace
Create an outbound sync source view off the Snowflake’s Listing Event table
Configure an outbound sync(s) to your Slack channels
Sit back and watch your installs and purchase notifications roll in
Install the Omnata native apps
Omnata Sync Engine - This is the main control pane for connections, sync configurations and monitoring.
Omnata Slack Plugin - This is the connector to the Slack endpoints and it will cost you $4/day.
Create a view of the Listing Events tables that will work for Omnata outbound syncs.
Omnata manages the incremental records that need to be push to destinations. For this, your table needs a Unique ID and you can add in any other fields you want to appear in the Slack message.
Here is a basic template to fire trial notifications, you can get as creative as you like with other information from Snowflake.
--Create a view of SNOWFLAKE.DATA_SHARING_USAGE.LISTING_EVENTS_DAILY structured for outbound syncs with Slack
SELECT
-- Date and timestamp fields
event_date,
event_timestamp,
-- Exchange and listing information
exchange_name,
event_type,
snowflake_region,
listing_name,
listing_display_name,
listing_global_name,
-- Consumer information
consumer_account_locator,
consumer_account_name,
consumer_organization,
consumer_email,
terms_accepted_date,
consumer_metadata,
region_group,
-- Parsed consumer name
consumer_name,
PARSE_JSON(consumer_metadata):first_name::STRING AS first_name,
PARSE_JSON(consumer_metadata):last_name::STRING AS last_name,
-- Creates a unique ID
CONCAT(
event_type,
event_timestamp,
terms_accepted_date,
listing_global_name,
consumer_account_locator
) AS unique_id,
--Counts events
ROW_NUMBER() OVER (ORDER BY event_timestamp, listing_global_name, consumer_account_locator) AS row_number
FROM SNOWFLAKE.DATA_SHARING_USAGE.LISTING_EVENTS_DAILY
WHERE
event_type = 'TRIAL' -- or add any other event types here
--AND event_date > '2025-01-31'
;
Configure the outbound sync to Slack
Omnata’s configuration wizard steps you through the process of creating an outbound sync. For Slack, it’s quite simple, Omnata will post a message whenever a new record appears in the source table.
You can add any Snowflake column in the source table as a field in the Jinja template.

Omnata runs on a schedule either with uniform gaps or on a cron schedule. We run ours four times a day on a cron schedule to pick up any events that drop into the Listing Events table during business hours.

Watch those notifications roll in…

subscribe
Deliver the goods to your inbox
subscribe
Deliver the goods to your inbox
subscribe