---
schema_version: "1"
id: 038c57d0983744b3cb075214aae28fb13e03d998f1dacced5b673e7d1e3a82de
title: WaveTemplateBundle
collection: legacydeveloper
version: current
locale: en-us
portal_url: https://docs.salesforce.com/legacydeveloper/current/en-us/api_meta/meta_wavetemplatebundle.md
canonical_url: https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_wavetemplatebundle.htm
source_site: developer.salesforce.com
content_type: documentation
content_hash: 12a55a5110e7df8cc9c5c2643218a1d406a11ae482594a096f3e9021a3b6406d
description: Represents an Analytics template bundle, which can be used to create Analytics apps. A bundle contains an Analytics template definition and all its related resources.This type extends the Metadata metadata type and inherits its fullName field.
---
# WaveTemplateBundle

Represents an Analytics template bundle, which can be used to create Analytics apps. A bundle contains an Analytics template definition and all its related resources.This type extends the Metadata metadata type and inherits its fullName field.

## File Suffix and Directory Location

An Analytics template bundle is a folder that contains definition files for a template. Unlike other metadata components, a WaveTemplateBundle component isn’t represented by a single component file, but instead by a collection of JSON and CSV definition files. Each definition file represents a resource in a template, such as lenses, dashboards, dataflows, and comma-separated values. For example, this directory structure shows the hierarchy of the folders and files for one Analytics Template definition, template1.

waveTemplates
    template1
        template-info.json 
        variables.json 
        ui.json 
        extFiles
            PostalCodes.csv

Analytics template bundles must be under a top-level folder that’s named waveTemplates. Each bundle must have its own subfolder under the waveTemplates folder and be named with the template's fully qualified API name. The bundle folder must contain a template-info.json file to specify the metadata about the template and the references to other definition files. An entire bundle doesn’t have a suffix and definition files can have one of the following suffixes.

| Suffix | Component Type |
| --- | --- |
| .json | JavaScript Object Notation |
| .csv | Comma-Separated Values |

## Version

WaveTemplateBundle components are available in API version 35.0 and later.

## Special Access Rules

Definitions can be created in both managed and unmanaged packages.

## Fields

<table class="featureTable sort_table" summary="">



          <thead class="thead sorted" align="left">
            <tr>
              <th class="featureTableHeader  " id="d1018088e143">Field Name</th>

              <th class="featureTableHeader  " id="d1018088e146">Field Type</th>

              <th class="featureTableHeader  " id="d1018088e149">Description</th>

            </tr>

          </thead>

          <tbody class="tbody">
            <tr>
              <td class="entry" headers="d1018088e143" data-title="Field Name"><span class="keyword parmname">assetIcon</span></td>

              <td class="entry" headers="d1018088e146" data-title="Field Type">string</td>

              <td class="entry" headers="d1018088e149" data-title="Description">The icon to use by default for new Analytics apps based on this template. Valid
                values are <samp class="codeph nolang">1.png</samp> through <samp class="codeph nolang">20.png</samp>.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1018088e143" data-title="Field Name"><span class="keyword parmname">description</span></td>

              <td class="entry" headers="d1018088e146" data-title="Field Type">string</td>

              <td class="entry" headers="d1018088e149" data-title="Description">The specification of the template.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1018088e143" data-title="Field Name"><span class="keyword parmname">label</span></td>

              <td class="entry" headers="d1018088e146" data-title="Field Type">string</td>

              <td class="entry" headers="d1018088e149" data-title="Description">Required. The label of the template.</td>

            </tr>

            <tr>
              <td class="entry" headers="d1018088e143" data-title="Field Name"><span class="keyword parmname">templateType</span></td>

              <td class="entry" headers="d1018088e146" data-title="Field Type">string</td>

              <td class="entry" headers="d1018088e149" data-title="Description">Required. The type of the template. Valid values are: <ul class="ul bulletList">
                  <li class="li"><samp class="codeph nolang">App</samp></li>

                  <li class="li"><samp class="codeph nolang">Dashboard</samp></li>

                  <li class="li"><samp class="codeph nolang">Lens</samp></li>

                </ul>
              </td>

            </tr>

          </tbody>

        </table>

## Wildcard Support in the Manifest File

This metadata type supports the wildcard character \* (asterisk) in the package.xml manifest file. For information about using the manifest file, see [Deploying and Retrieving Metadata with the Zip File](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/file_based_zip_file.htm).