---
schema_version: "1"
id: 5a5b3cb9f37102448748c6be178a3c8c1036e31d9cb0e6b819966e53e3606968
title: Custom Collaboration Templates
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/data/264-0-0/c360_a_crc_custom_collaboration_templates.md
canonical_url: https://help.salesforce.com/s/articleView?id=data.c360_a_crc_custom_collaboration_templates.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: a6f632d10a6007ae3ebbd5322727058d8ce808540f6e9447177945d361099383
description: Custom collaboration templates are JSON files that providers can create to specify the required metadata attributes and the terms of the collaboration. Custom templates can support multiple use cases and multiple queries under each use case. To create a custom template, copy the sample JSON, specify the field values, and upload the template while creating a package. You can also download the sample JSON from Data 360 Setup when you’re creating the clean room package.
products:
  - Data 360
release: "264"
---
# Custom Collaboration Templates

Custom collaboration templates are JSON files that providers can create to specify the required metadata attributes and the terms of the collaboration. Custom templates can support multiple use cases and multiple queries under each use case. To create a custom template, copy the sample JSON, specify the field values, and upload the template while creating a package. You can also download the sample JSON from Data 360 Setup when you’re creating the clean room package. 

## Template Overview

A custom collaboration template includes these fields.

    
| Field Name | data type | Requirement | Accepted values | Description |
| --- | --- | --- | --- | --- |
| `name` | string | Required | N/A | The name of the collaboration template. |
| `description` | string | Optional | N/A | A short description of the collaboration template. |
| `tables` | object | Required | N/A | The input tables used in a collaboration query. |
| `queries` | object | Required | N/A | The queries to be run in the clean room collaboration to support a use case. |

## Table Configurations

Each input table used by the query must be defined as a `tables` field. Each table definition must include the `tableConfigs` property.

- `tableConfigs` (array, required) – A list of table definitions. Each entry represents one table configuration and must include these fields.

    
| Field Name | data type | Requirement | Accepted values | Description |
| --- | --- | --- | --- | --- |
| `name` | string | Required | N/A | The name of the table. |
| `description` | string | Optional | N/A | A short description of the table definitions. |
| `role` | string | Required | Provider or Consumer | The role that is sharing the table in the collaboration. |
| `columns` | array | Required | N/A | The schema of the table. Each column object defines a field in the table and must include a `name`, a `type`, an optional `description` and a `defaultvalue`, if any. |

## Query Configurations

The queries section defines all the queries that you want to allow on the combined dataset in a clean room. Each query must include the queryConfigs property.

- `queryConfigs` (array, required) – A list of query configurations. Each entry defines a single query and must include these fields.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col>
          <col>
          <col>
          <col>
          <col>
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d226402e341">Field Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d226402e344">data type</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d226402e347">Requirement</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d226402e350">Accepted values</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d226402e353">Description</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e341 "><code>name</code></td>

            <td data-label="data type" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e344 ">string</td>

            <td data-label="Requirement" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e347 ">Required</td>

            <td data-label="Accepted values" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e350 ">N/A</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e353 ">The name of the query.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e341 "><code>description</code></td>

            <td data-label="data type" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e344 ">string</td>

            <td data-label="Requirement" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e347 ">Optional</td>

            <td data-label="Accepted values" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e350 ">N/A</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e353 ">A short description of the query configurations.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e341 "><code>useCase</code></td>

            <td data-label="data type" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e344 ">string</td>

            <td data-label="Requirement" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e347 ">Required</td>

            <td data-label="Accepted values" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e350 "><kbd>Overlap</kbd> or <kbd>Custom</kbd></td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e353 ">The use case that this query supports.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e341 "><code>type</code></td>

            <td data-label="data type" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e344 ">string</td>

            <td data-label="Requirement" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e347 ">Required</td>

            <td data-label="Accepted values" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e350 "><kbd>SQL</kbd></td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e353 ">The type of query.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e341 "><code>source</code></td>

            <td data-label="data type" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e344 ">string</td>

            <td data-label="Requirement" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e347 ">Required</td>

            <td data-label="Accepted values" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e350 ">N/A</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e353 ">
              <p>The actual SQL query text. </p>
              <p style="margin-bottom:0;">Use explicit aliases for <code>SELECT</code>
                columns.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e341 "><code>referencedTables</code></td>

            <td data-label="data type" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e344 ">array of strings</td>

            <td data-label="Requirement" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e347 ">Required</td>

            <td data-label="Accepted values" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e350 ">N/A</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e353 ">A list of all tables that the query references. This field must contain at
              least one table name.</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e341 "><code>queryParameters</code></td>

            <td data-label="data type" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e344 ">object</td>

            <td data-label="Requirement" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e347 ">Optional</td>

            <td data-label="Accepted values" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e350 ">N/A</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e353 ">The dynamic parameters used in the query. Each <code>queryParameter</code>
              must contain a <code>queryParamConfigs</code> with a <code>name</code>, a
              <code>type</code> and an optional <code>description</code> field.
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e341 "><code>analysisConfigs</code></td>

            <td data-label="data type" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e344 ">object</td>

            <td data-label="Requirement" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e347 ">Optional</td>

            <td data-label="Accepted values" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e350 ">N/A</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d226402e353 ">The output options, such as outputPath.</td>

          </tr>
        </tbody>
      </table>

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-data-data_cloud-264-0-0-production-enus/f3569962-3c9b-4f83-9d0c-b6a574e785da/images/icon_note.png)

Note Values for enum fields such as role, useCase, and type are case-sensitive.

- **[Custom Collaboration Template Sample JSON](https://help.salesforce.com/s/articleView?id=data.c360_a_crc_custom_collab_template_json.htm&release=264.0.0&type=5)**  
    Copy the template code below or download it directly in Data 360 to begin creating your custom template. Fill in the required and optional fields with appropriate values.
- **[Identity Boost Custom Collaboration Template](https://help.salesforce.com/s/articleView?id=data.c360_a_crc_id_boost_custom_template.htm&release=264.0.0&type=5)**  
    The identity boost custom collaboration template is a JSON configuration that supports identity enrichment use cases in Data 360 Clean Rooms. Use this template to enrich your first-party individual data with third-party identity attributes, such as real IDs from identity resolution providers, in a privacy-safe environment.
- **[Supported Data Types for Custom Templates](https://help.salesforce.com/s/articleView?id=data.c360_a_crc_custom_templates_datatypes.htm&release=264.0.0&type=5)**  
    The data types supported in custom templates vary based on the clean rooms platform. Adhere to supported data types for successful query execution.