CREATE ORGANIZATION LISTING

Create an organization listing to share data products securely within your organization.

Syntax

CREATE ORGANIZATION LISTING [ IF NOT EXISTS ] <name>
  [ { SHARE <share_name>  |  APPLICATION PACKAGE <package_name> } ]
  AS '<yaml_manifest_string>'
  [ PUBLISH = { TRUE | FALSE } ]
  [ REVIEW = { TRUE | FALSE } ]
Copy

Parameters

name

Specifies the identifier (name) for the listing. It must conform to the following:

  • Must be unique within an account, regardless of which Snowflake Region the account is located in. The Uniform Listing Locator (ULL) must be unique within an organization.

  • Cannot contain embedded dollar signs.

  • Must conform to Snowflake identifier requirements. See Identifier Requirements.

SHARE share_name

Specifies the identifier for the share to attach to the listing.

APPLICATION PACKAGE package_name

Specifies the application package attached to the listing.

See also SHOW APPLICATION PACKAGES.

AS 'yaml_manifest_string'

Specifies the YAML format manifest for the listing. See Listing manifest reference for details and examples of listing manifest files.

Manifests are normally provided as dollar quoted strings. For more information, see Dollar-Quoted String Constants.

PUBLISH = { TRUE | FALSE }

Specifies how the listing should be published.

If TRUE, listing is published immediately on listing to Marketplace Ops for review.

Default: TRUE.

REVIEW =  { TRUE | FALSE }

Specifies whether the listing should or should not submitted to Marketplace Ops review.

Default: TRUE.

Different combinations of values for the PUBLISH and REVIEW properties result in the following behaviors:

PUBLISH

REVIEW

Behavior

TRUE

TRUE

Request review then immediately publish after approval.

TRUE

FALSE

Results in an error. You cannot publish a listing on the Snowflake Marketplace without review.

FALSE

TRUE

Request a review without publishing automatically after review.

FALSE

FALSE

Save your listing as a draft without requesting review or publishing.

Access control requirements

A role used to execute this SQL command must have either of the following privileges at a minimum:

Privilege

Object

Notes

CREATE ORGANIZATION LISTING or CREATE DATA EXCHANGE LISTING

Account

To create and alter organization listings.

The role used to execute this SQL command must have one of the following privileges:

Privilege

Object

Notes

USAGE

SHARE

To attach the specified share to a listing.

USAGE

APPLICATION

To attach the specified Snowflake Native App Framework to a listing.

Usage notes

  • Listings created using CREATE ORGANIZATION LISTING … are automatically published.

Examples

This example creates a listing named MYORGLISTING using the settings specified in the manifest YAML. It targets one role in one account in one region and includes support and approver contacts.

Note

support_contact is required. approver_contact is required if a discovery target is provided.

USE ROLE <organization_listing_role>;

CREATE ORGANIZATION LISTING MYORGLISTING
SHARE <share_name> AS
$$
title: "My title"
description: "One region, all accounts"
organization_profile: "INTERNAL"
organization_targets:
discovery:
   - account: "<account_name>"
roles:
   - "<role>"
access:
   - account: "<account_name>"
   roles:
   - "<role>"
support_contact: "support@somedomain.com"
approver_contact: "approver@somedomain.com"
locations:
   access_regions:
   - name: "PUBLIC.<snowflake_region>"
$$
;
Copy