CREATE ORGANIZATION PROFILE

Create the organization profile that forms part of the Uniform Listing Locator (ULL) used to publish organizational listings or query organizational listing information without mounting the listing. To create an organization profile, you modify the listing manifest and then move it to a stage where you can then publish or unpublish it.

See also:

ALTER ORGANIZATION PROFILE, DESCRIBE AVAILABLE ORGANIZATION PROFILE, DESCRIBE ORGANIZATION PROFILE, DROP ORGANIZATION PROFILE, SHOW AVAILABLE ORGANIZATION PROFILES, SHOW ORGANIZATION PROFILES, SHOW VERSIONS IN ORGANIZATION PROFILE, Organization profile manifest reference.

Syntax

CREATE ORGANIZATION PROFILE [ IF NOT EXISTS ] <name>

CREATE ORGANIZATION PROFILE [ IF NOT EXISTS ] <name>
  FROM @<yaml_manifest_stage_location>
  [ VERSION <version_alias_name> ]
  [ PUBLISH = { TRUE | FALSE } ]
Copy

Required parameters

name

String that specifies the identifier (name) for the organization profile. It must be unique within the current organization. The identifier must conform to Snowflake identifier requirements. See Identifier requirements. Additionally, organization profile names can only contain uppercase characters or numbers, they must start with an uppercase character, and the name length cannot exceed 128 characters.

FROM @yaml_manifest_stage_location

Specifies the external, internal, or repository stage YAML format manifest stage location.

Optional parameters

VERSION version_alias_name

Optional. Specifies the unique version identifier for the version being added. If VERSION version_name isn’t specified, an alias isn’t created. If the identifier contains spaces, special characters, or mixed-case characters, the entire identifier must be enclosed in double quotes. Identifiers enclosed in double quotes are also case sensitive. The FIRST, LAST, DEFAULT or LIVE keywords are reserved as version shortcuts and can’t be used. The unique version identifier can’t start with “version$” and can’t contain slashes ( / ). For information about identifier syntax, see Identifier requirements.

PUBLISH = { TRUE | FALSE }

Optional. Specifies how the organization profile should be published.

If TRUE, the organization profile is published immediately.

Default: FALSE.

Access control requirements

A role used to execute this operation must have the following privileges at a minimum:

Privilege

Object

Notes

CREATE ORGANIZATION PROFILE

Account

Organization profiles can only be created from the organization account in an organization. The GLOBALORGADMIN role has been granted the CREATE ORGANIZATION PROFILE privilege.

Usage notes

  • Organization profiles created using CREATE ORGANIZATION PROFILE are DRAFT until they are published.

Examples

This example creates a database named OrgProfileDB, a stage named my_test_state_org_profile, and an organization profile with a title of MY_ORG_PROFILE. The title field represents the provider domain, and it’s shown under the Organization Listing and as a filter option under Providers in an Internal Marketplace.

CREATE DATABASE OrgProfileDB;
CREATE STAGE my_test_stage_org_profile;
COPY INTO @my_test_stage_org_profile/manifest.yml
  FROM (
    SELECT $$
      title: "MY_ORG_PROFILE"
      description: "Profile for SE Business Unit"
      contact: "contact_name@myemail.com"
      approver_contact: "approver_name@email.com"
      allowed_publishers:
        access:
          - all_internal_accounts: "true"
      logo: "urn:icon:shieldlock:blue"
    $$
  )
  SINGLE = TRUE
  OVERWRITE = TRUE
  FILE_FORMAT = (
    COMPRESSION = NONE
    ESCAPE_UNENCLOSED_FIELD = NONE
  );
Copy

This example publishes an organization profile named MYPROFILENAME from the my_test_stage_org_profile stage.

CREATE ORGANIZATION PROFILE MYPROFILENAME
 FROM @my_test_stage_org_profile
 PUBLISH=TRUE;
Copy