[ aws . quicksight ]



Creates a template from an existing QuickSight analysis or template. You can use the resulting template to create a dashboard.

A template is an entity in QuickSight that encapsulates the metadata required to create an analysis and that you can use to create s dashboard. A template adds a layer of abstraction by using placeholders to replace the dataset associated with the analysis. You can use templates to create dashboards by replacing dataset placeholders with datasets that follow the same schema that was used to create the source analysis and template.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.


--aws-account-id <value>
--template-id <value>
[--name <value>]
[--permissions <value>]
--source-entity <value>
[--tags <value>]
[--version-description <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--cli-auto-prompt <value>]


--aws-account-id (string)

The ID for the AWS account that the group is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.

--template-id (string)

An ID for the template that you want to create. This template is unique per AWS Region in each AWS account.

--name (string)

A display name for the template.

--permissions (list)

A list of resource permissions to be set on the template.


Permission for the resource.

Principal -> (string)

The Amazon Resource Name (ARN) of the principal. This can be one of the following:

  • The ARN of an Amazon QuickSight user, group, or namespace. (This is most common.)

  • The ARN of an AWS account root: This is an IAM ARN rather than a QuickSight ARN. Use this option only to share resources (templates) across AWS accounts. (This is less common.)

Actions -> (list)

The action to grant or revoke permissions on, for example "quicksight:DescribeDashboard" .


Shorthand Syntax:

Principal=string,Actions=string,string ...

JSON Syntax:

    "Principal": "string",
    "Actions": ["string", ...]

--source-entity (structure)

The entity that you are using as a source when you create the template. In SourceEntity , you specify the type of object you’re using as source: SourceTemplate for a template or SourceAnalysis for an analysis. Both of these require an Amazon Resource Name (ARN). For SourceTemplate , specify the ARN of the source template. For SourceAnalysis , specify the ARN of the source analysis. The SourceTemplate ARN can contain any AWS Account and any QuickSight-supported AWS Region.

Use the DataSetReferences entity within SourceTemplate or SourceAnalysis to list the replacement datasets for the placeholders listed in the original. The schema in each dataset must match its placeholder.

SourceAnalysis -> (structure)

The source analysis, if it is based on an analysis.

Arn -> (string)

The Amazon Resource Name (ARN) of the resource.

DataSetReferences -> (list)

A structure containing information about the dataset references used as placeholders in the template.


Dataset reference.

DataSetPlaceholder -> (string)

Dataset placeholder.

DataSetArn -> (string)

Dataset Amazon Resource Name (ARN).

SourceTemplate -> (structure)

The source template, if it is based on an template.

Arn -> (string)

The Amazon Resource Name (ARN) of the resource.

JSON Syntax:

  "SourceAnalysis": {
    "Arn": "string",
    "DataSetReferences": [
        "DataSetPlaceholder": "string",
        "DataSetArn": "string"
  "SourceTemplate": {
    "Arn": "string"

--tags (list)

Contains a map of the key-value pairs for the resource tag or tags assigned to the resource.


The key or keys of the key-value pairs for the resource tag or tags assigned to the resource.

Key -> (string)

Tag key.

Value -> (string)

Tag value.

Shorthand Syntax:

Key=string,Value=string ...

JSON Syntax:

    "Key": "string",
    "Value": "string"

--version-description (string)

A description of the current template version being created. This API operation creates the first version of the template. Every time UpdateTemplate is called, a new version is created. Each version of the template maintains a description of the version in the VersionDescription field.

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

--cli-auto-prompt (boolean) Automatically prompt for CLI input parameters.

See ‘aws help’ for descriptions of global parameters.


Arn -> (string)

The ARN for the template.

VersionArn -> (string)

The ARN for the template, including the version information of the first version.

TemplateId -> (string)

The ID of the template.

CreationStatus -> (string)

The template creation status.

Status -> (integer)

The HTTP status of the request.

RequestId -> (string)

The AWS request ID for this operation.