Especificação da colaboração

Define a colaboração de alto nível. A especificação define quais executores de análise são convidados e, para cada executor de análise, quais dados e modelos eles podem acessar e executar. Quaisquer modelos ou ofertas de dados listados aqui devem ser registrados antes de serem incluídos na especificação da colaboração.

O proprietário envia essa especificação chamando INITIALIZE.

Esquema:

api_version: 2.0.0              # Required: Must be "2.0.0"
spec_type: collaboration        # Required: Must be "collaboration"
name: <collaboration_name>      # Required: Unique name (max 75 chars)
version: <version_string>       # Optional: Version identifier (max 20 chars)
description: <collaboration_description>  # Optional: Description (max 1,000 chars)
owner: <owner_alias>            # Required: Alias of owner

collaborator_identifier_aliases:  # Required: Map aliases to account identifiers
  <alias_1>: <account_identifier_1>  # One or more alias mappings...

analysis_runners:               # Required: Who can run analyses
  <analysis_runner_alias>:      # One or more analysis runner definitions...
    data_providers:             # Required: Data providers for this runner
      <provider_alias>:         # One or more provider definitions...
        data_offerings:         # Required: List of offerings (can be empty [])
          - id: <data_offering_id>  # Zero or more data offering IDs...
    templates:                  # Optional: Templates this runner can use
      - id: <template_id>       # One or more template IDs...
    activation_destinations:    # Optional: Where results can be sent
      snowflake_collaborators:  # Optional: Collaborators who can receive results
        - <collaborator_alias>  # One or more collaborator aliases...
api_version

A versão da API do Collaboration utilizada. Deve ser 2.0.0.

spec_type

Identificador do tipo de especificação. Deve ser collaboration.

name: collaboration_name

Nome amigável para essa colaboração. Deve ser único na conta do criador e seguir as :doc:`regras do identificador do Snowflake </sql-reference/identifiers-syntax>`(máximo de 75 caracteres).

version (opcional)

Um identificador de versão para essa colaboração (máximo de 20 caracteres). Deve seguir as regras do identificador do Snowflake. Um bom formato para usar é YYYY_MM_DD_V#. Por exemplo: 2025_10_22_V1.

description: collaboration_description (opcional)

Uma descrição legível da colaboração (máximo de 1.000 caracteres), para que os colaboradores possam ler.

owner: owner_alias

Alias ​​do proprietário da colaboração, conforme definido em collaborator_identifier_aliases.

collaborator_identifier_aliases

Mapeamento dos aliases dos colaboradores para os identificadores de conta de compartilhamento de dados. Somente os usuários listados aqui podem participar da colaboração. Use os aliases definidos aqui para se referir a todos os colaboradores, em vez de usar diretamente o identificador da conta de compartilhamento de dados deles. Deve ser exclusivo nesta colaboração e seguir as regras do identificador do Snowflake (máximo de 25 caracteres).

analysis_runners

Descreve quem pode executar uma análise nesta colaboração. Cada executor de análise é identificado por um alias exclusivo. Você deve permitir que pelo menos uma conta execute uma análise nesta colaboração.

<analysis_runner_alias>

Alias ​ ​da conta que pode executar uma análise nesta colaboração. O alias é definido na lista collaborator_identifier_aliases.

data_providers

Provedores de dados cujos dados este executor de análise pode acessar. Cada provedor é identificado pelo alias definido em collaborator_identifier_aliases.

data_offerings

Uma lista de ofertas de dados deste provedor de dados que o executor de análise pode acessar, ou uma matriz vazia [] como espaço reservado para que seja possível adicionar ofertas de dados posteriormente. Cada oferta de dados é referenciada pelo respectivo ID, gerado quando o provedor de dados chama REGISTER_DATA_OFFERING.

templates (opcional)

Os modelos que podem ser utilizados ​​por este executor de análise. Cada modelo é referenciado por um ID próprio. Você pode omitir isso na especificação inicial e ainda compartilhar modelos com esse executor de análise após a criação da colaboração.

activation_destinations (opcional)

Define as configurações de ativação para os resultados da análise.

snowflake_collaborators (opcional)

Lista de colaboradores que podem receber resultados de análise ativados. Use o alias da lista collaborator_identifier_aliases nesta especificação. Todos os colaboradores listados aqui devem ter as permissões descritas em Implementando a ativação.

Exemplos

api_version: 2.0.0
spec_type: collaboration
name: my_sample_collaboration
owner: Owner
collaborator_identifier_aliases:
  Owner: ENG.OWNER
  AnalysisRunner_1: ENG.CONSUMER_1
  DataProvider_1: ENG.PROVIDER_1
  DataProvider_2: ENG.PROVIDER_2
  AnalysisRunner_2: ENG.PROVIDER_3
analysis_runners:
  AnalysisRunner_1:
    data_providers:
      DataProvider_1:
        data_offerings:
        - id: DCR_PREPROD_CI_PROVIDER_ANY_NAME_ZUDFTMULHQ_iuDfn_v0
      DataProvider_2:
        data_offerings: []
    templates:
    - id: test_sca_three_party_template_JOaVG_v0
  AnalysisRunner_2:
    data_providers:
      DataProvider_2:
        data_offerings: []
    templates:
    - id: test_sca_three_party_template_JOaVG_v0