Amazon QuickSight

2021/07/27 - Amazon QuickSight - 2 new4 updated api methods

Changes  Add support to use row-level security with tags when embedding dashboards for users not provisioned in QuickSight

GenerateEmbedUrlForAnonymousUser (new) Link ¶

Generates an embed URL that you can use to embed an Amazon QuickSight dashboard in your website, without having to register any reader users. Before you use this action, make sure that you have configured the dashboards and permissions.

The following rules apply to the generated URL:

  • It contains a temporary bearer token. It is valid for 5 minutes after it is generated. Once redeemed within this period, it cannot be re-used again.

  • The URL validity period should not be confused with the actual session lifetime that can be customized using the SessionLifetimeInMinutes parameter. The resulting user session is valid for 15 minutes (default) to 10 hours (maximum).

  • You are charged only when the URL is used or there is interaction with Amazon QuickSight.

For more information, see Embedded Analytics in the Amazon QuickSight User Guide.

For more information about the high-level steps for embedding and for an interactive demo of the ways you can customize embedding, visit the Amazon QuickSight Developer Portal.

See also: AWS API Documentation

Request Syntax

client.generate_embed_url_for_anonymous_user(
    AwsAccountId='string',
    SessionLifetimeInMinutes=123,
    Namespace='string',
    SessionTags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    AuthorizedResourceArns=[
        'string',
    ],
    ExperienceConfiguration={
        'Dashboard': {
            'InitialDashboardId': 'string'
        }
    }
)
type AwsAccountId:

string

param AwsAccountId:

[REQUIRED]

The ID for the Amazon Web Services account that contains the dashboard that you're embedding.

type SessionLifetimeInMinutes:

integer

param SessionLifetimeInMinutes:

How many minutes the session is valid. The session lifetime must be in [15-600] minutes range.

type Namespace:

string

param Namespace:

[REQUIRED]

The Amazon QuickSight namespace that the anonymous user virtually belongs to. If you are not using an Amazon QuickSight custom namespace, set this to default.

type SessionTags:

list

param SessionTags:

The session tags used for row-level security. Before you use this parameter, make sure that you have configured the relevant datasets using the DataSet$RowLevelPermissionTagConfiguration parameter so that session tags can be used to provide row-level security.

These are not the tags used for the Amazon Web Services resource tagging feature. For more information, see Using Row-Level Security (RLS) with Tags.

  • (dict) --

    The key-value pair used for the row-level security tags feature.

    • Key (string) -- [REQUIRED]

      The key for the tag.

    • Value (string) -- [REQUIRED]

      The value that you want to assign the tag.

type AuthorizedResourceArns:

list

param AuthorizedResourceArns:

[REQUIRED]

The Amazon Resource Names for the Amazon QuickSight resources that the user is authorized to access during the lifetime of the session. If you choose Dashboard embedding experience, pass the list of dashboard ARNs in the account that you want the user to be able to view.

  • (string) --

type ExperienceConfiguration:

dict

param ExperienceConfiguration:

[REQUIRED]

The configuration of the experience you are embedding.

  • Dashboard (dict) --

    The type of embedding experience. In this case, an Amazon QuickSight dashboard.

    • InitialDashboardId (string) -- [REQUIRED]

      The dashboard ID for the dashboard that you want the user to see first. This ID is included in the output URL. When the URL in response is accessed, Amazon QuickSight renders this dashboard.

      The Amazon Resource Name (ARN) of this dashboard must be included in the AuthorizedResourceArns parameter. Otherwise, the request will fail with InvalidParameterValueException.

rtype:

dict

returns:

Response Syntax

{
    'EmbedUrl': 'string',
    'Status': 123,
    'RequestId': 'string'
}

Response Structure

  • (dict) --

    • EmbedUrl (string) --

      The embed URL for the dashboard.

    • Status (integer) --

      The HTTP status of the request.

    • RequestId (string) --

      The Amazon Web Services request ID for this operation.

GenerateEmbedUrlForRegisteredUser (new) Link ¶

Generates an embed URL that you can use to embed an Amazon QuickSight experience in your website. This action can be used for any type of user registered in an Amazon QuickSight account. Before you use this action, make sure that you have configured the relevant Amazon QuickSight resource and permissions.

The following rules apply to the generated URL:

  • It contains a temporary bearer token. It is valid for 5 minutes after it is generated. Once redeemed within this period, it cannot be re-used again.

  • The URL validity period should not be confused with the actual session lifetime that can be customized using the SessionLifetimeInMinutes parameter. The resulting user session is valid for 15 minutes (default) to 10 hours (maximum).

  • You are charged only when the URL is used or there is interaction with Amazon QuickSight.

For more information, see Embedded Analytics in the Amazon QuickSight User Guide.

For more information about the high-level steps for embedding and for an interactive demo of the ways you can customize embedding, visit the Amazon QuickSight Developer Portal.

See also: AWS API Documentation

Request Syntax

client.generate_embed_url_for_registered_user(
    AwsAccountId='string',
    SessionLifetimeInMinutes=123,
    UserArn='string',
    ExperienceConfiguration={
        'Dashboard': {
            'InitialDashboardId': 'string'
        },
        'QuickSightConsole': {
            'InitialPath': 'string'
        }
    }
)
type AwsAccountId:

string

param AwsAccountId:

[REQUIRED]

The ID for the Amazon Web Services account that contains the dashboard that you're embedding.

type SessionLifetimeInMinutes:

integer

param SessionLifetimeInMinutes:

How many minutes the session is valid. The session lifetime must be in [15-600] minutes range.

type UserArn:

string

param UserArn:

[REQUIRED]

The Amazon Resource Name for the registered user.

type ExperienceConfiguration:

dict

param ExperienceConfiguration:

[REQUIRED]

The experience you are embedding. For registered users, you can embed Amazon QuickSight dashboards or the entire Amazon QuickSight console.

  • Dashboard (dict) --

    The configuration details for providing a dashboard embedding experience.

    • InitialDashboardId (string) -- [REQUIRED]

      The dashboard ID for the dashboard that you want the user to see first. This ID is included in the output URL. When the URL in response is accessed, Amazon QuickSight renders this dashboard if the user has permissions to view it.

      If the user does not have permission to view this dashboard, they see a permissions error message.

  • QuickSightConsole (dict) --

    The configuration details for providing an Amazon QuickSight console embedding experience. This can be used along with custom permissions to restrict access to certain features. For more information, see Customizing Access to the Amazon QuickSight Console in the Amazon QuickSight User Guide.

    Use GenerateEmbedUrlForRegisteredUser where you want to provide an authoring portal that allows users to create data sources, datasets, analyses, and dashboards. The users who accesses an embedded Amazon QuickSight console needs to belong to the author or admin security cohort. If you want to restrict permissions to some of these features, add a custom permissions profile to the user with the UpdateUser API operation. Use RegisterUser API operation to add a new user with a custom permission profile attached. For more information, see the following sections in the Amazon QuickSight User Guide:

    For more information about the high-level steps for embedding and for an interactive demo of the ways you can customize embedding, visit the Amazon QuickSight Developer Portal.

    • InitialPath (string) --

      The initial URL path for the Amazon QuickSight console. InitialPath is required.

      The entry point URL is constrained to the following paths:

      • /start

      • /start/analyses

      • /start/dashboards

      • /start/favorites

      • /dashboards/DashboardId. DashboardId is the actual ID key from the Amazon QuickSight console URL of the dashboard.

      • /analyses/AnalysisId. AnalysisId is the actual ID key from the Amazon QuickSight console URL of the analysis.

rtype:

dict

returns:

Response Syntax

{
    'EmbedUrl': 'string',
    'Status': 123,
    'RequestId': 'string'
}

Response Structure

  • (dict) --

    • EmbedUrl (string) --

      The embed URL for the Amazon QuickSight dashboard or console.

    • Status (integer) --

      The HTTP status of the request.

    • RequestId (string) --

      The Amazon Web Services request ID for this operation.

CreateDataSet (updated) Link ¶
Changes (request)
{'RowLevelPermissionDataSet': {'Status': 'ENABLED | DISABLED'},
 'RowLevelPermissionTagConfiguration': {'Status': 'ENABLED | DISABLED',
                                        'TagRules': [{'ColumnName': 'string',
                                                      'MatchAllValue': 'string',
                                                      'TagKey': 'string',
                                                      'TagMultiValueDelimiter': 'string'}]}}

Creates a dataset.

See also: AWS API Documentation

Request Syntax

client.create_data_set(
    AwsAccountId='string',
    DataSetId='string',
    Name='string',
    PhysicalTableMap={
        'string': {
            'RelationalTable': {
                'DataSourceArn': 'string',
                'Catalog': 'string',
                'Schema': 'string',
                'Name': 'string',
                'InputColumns': [
                    {
                        'Name': 'string',
                        'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                    },
                ]
            },
            'CustomSql': {
                'DataSourceArn': 'string',
                'Name': 'string',
                'SqlQuery': 'string',
                'Columns': [
                    {
                        'Name': 'string',
                        'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                    },
                ]
            },
            'S3Source': {
                'DataSourceArn': 'string',
                'UploadSettings': {
                    'Format': 'CSV'|'TSV'|'CLF'|'ELF'|'XLSX'|'JSON',
                    'StartFromRow': 123,
                    'ContainsHeader': True|False,
                    'TextQualifier': 'DOUBLE_QUOTE'|'SINGLE_QUOTE',
                    'Delimiter': 'string'
                },
                'InputColumns': [
                    {
                        'Name': 'string',
                        'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                    },
                ]
            }
        }
    },
    LogicalTableMap={
        'string': {
            'Alias': 'string',
            'DataTransforms': [
                {
                    'ProjectOperation': {
                        'ProjectedColumns': [
                            'string',
                        ]
                    },
                    'FilterOperation': {
                        'ConditionExpression': 'string'
                    },
                    'CreateColumnsOperation': {
                        'Columns': [
                            {
                                'ColumnName': 'string',
                                'ColumnId': 'string',
                                'Expression': 'string'
                            },
                        ]
                    },
                    'RenameColumnOperation': {
                        'ColumnName': 'string',
                        'NewColumnName': 'string'
                    },
                    'CastColumnTypeOperation': {
                        'ColumnName': 'string',
                        'NewColumnType': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME',
                        'Format': 'string'
                    },
                    'TagColumnOperation': {
                        'ColumnName': 'string',
                        'Tags': [
                            {
                                'ColumnGeographicRole': 'COUNTRY'|'STATE'|'COUNTY'|'CITY'|'POSTCODE'|'LONGITUDE'|'LATITUDE',
                                'ColumnDescription': {
                                    'Text': 'string'
                                }
                            },
                        ]
                    }
                },
            ],
            'Source': {
                'JoinInstruction': {
                    'LeftOperand': 'string',
                    'RightOperand': 'string',
                    'LeftJoinKeyProperties': {
                        'UniqueKey': True|False
                    },
                    'RightJoinKeyProperties': {
                        'UniqueKey': True|False
                    },
                    'Type': 'INNER'|'OUTER'|'LEFT'|'RIGHT',
                    'OnClause': 'string'
                },
                'PhysicalTableId': 'string'
            }
        }
    },
    ImportMode='SPICE'|'DIRECT_QUERY',
    ColumnGroups=[
        {
            'GeoSpatialColumnGroup': {
                'Name': 'string',
                'CountryCode': 'US',
                'Columns': [
                    'string',
                ]
            }
        },
    ],
    FieldFolders={
        'string': {
            'description': 'string',
            'columns': [
                'string',
            ]
        }
    },
    Permissions=[
        {
            'Principal': 'string',
            'Actions': [
                'string',
            ]
        },
    ],
    RowLevelPermissionDataSet={
        'Namespace': 'string',
        'Arn': 'string',
        'PermissionPolicy': 'GRANT_ACCESS'|'DENY_ACCESS',
        'FormatVersion': 'VERSION_1'|'VERSION_2',
        'Status': 'ENABLED'|'DISABLED'
    },
    RowLevelPermissionTagConfiguration={
        'Status': 'ENABLED'|'DISABLED',
        'TagRules': [
            {
                'TagKey': 'string',
                'ColumnName': 'string',
                'TagMultiValueDelimiter': 'string',
                'MatchAllValue': 'string'
            },
        ]
    },
    ColumnLevelPermissionRules=[
        {
            'Principals': [
                'string',
            ],
            'ColumnNames': [
                'string',
            ]
        },
    ],
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type AwsAccountId:

string

param AwsAccountId:

[REQUIRED]

The Amazon Web Services account; ID.

type DataSetId:

string

param DataSetId:

[REQUIRED]

An ID for the dataset that you want to create. This ID is unique per Region; for each Amazon Web Services account;.

type Name:

string

param Name:

[REQUIRED]

The display name for the dataset.

type PhysicalTableMap:

dict

param PhysicalTableMap:

[REQUIRED]

Declares the physical tables that are available in the underlying data sources.

  • (string) --

    • (dict) --

      A view of a data source that contains information about the shape of the data in the underlying source. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

      • RelationalTable (dict) --

        A physical table type for relational data sources.

        • DataSourceArn (string) -- [REQUIRED]

          The Amazon Resource Name (ARN) for the data source.

        • Catalog (string) --

          The catalog associated with a table.

        • Schema (string) --

          The schema name. This name applies to certain relational database engines.

        • Name (string) -- [REQUIRED]

          The name of the relational table.

        • InputColumns (list) -- [REQUIRED]

          The column schema of the table.

          • (dict) --

            Metadata for a column that is used as the input of a transform operation.

            • Name (string) -- [REQUIRED]

              The name of this column in the underlying data source.

            • Type (string) -- [REQUIRED]

              The data type of the column.

      • CustomSql (dict) --

        A physical table type built from the results of the custom SQL query.

        • DataSourceArn (string) -- [REQUIRED]

          The Amazon Resource Name (ARN) of the data source.

        • Name (string) -- [REQUIRED]

          A display name for the SQL query result.

        • SqlQuery (string) -- [REQUIRED]

          The SQL query.

        • Columns (list) --

          The column schema from the SQL query result set.

          • (dict) --

            Metadata for a column that is used as the input of a transform operation.

            • Name (string) -- [REQUIRED]

              The name of this column in the underlying data source.

            • Type (string) -- [REQUIRED]

              The data type of the column.

      • S3Source (dict) --

        A physical table type for as S3 data source.

        • DataSourceArn (string) -- [REQUIRED]

          The Amazon Resource Name (ARN) for the data source.

        • UploadSettings (dict) --

          Information about the format for the S3 source file or files.

          • Format (string) --

            File format.

          • StartFromRow (integer) --

            A row number to start reading data from.

          • ContainsHeader (boolean) --

            Whether the file has a header row, or the files each have a header row.

          • TextQualifier (string) --

            Text qualifier.

          • Delimiter (string) --

            The delimiter between values in the file.

        • InputColumns (list) -- [REQUIRED]

          A physical table type for an S3 data source.

          • (dict) --

            Metadata for a column that is used as the input of a transform operation.

            • Name (string) -- [REQUIRED]

              The name of this column in the underlying data source.

            • Type (string) -- [REQUIRED]

              The data type of the column.

type LogicalTableMap:

dict

param LogicalTableMap:

Configures the combination and transformation of the data from the physical tables.

  • (string) --

    • (dict) --

      A logical table is a unit that joins and that data transformations operate on. A logical table has a source, which can be either a physical table or result of a join. When a logical table points to a physical table, the logical table acts as a mutable copy of that physical table through transform operations.

      • Alias (string) -- [REQUIRED]

        A display name for the logical table.

      • DataTransforms (list) --

        Transform operations that act on this logical table.

        • (dict) --

          A data transformation on a logical table. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

          • ProjectOperation (dict) --

            An operation that projects columns. Operations that come after a projection can only refer to projected columns.

            • ProjectedColumns (list) -- [REQUIRED]

              Projected columns.

              • (string) --

          • FilterOperation (dict) --

            An operation that filters rows based on some condition.

            • ConditionExpression (string) -- [REQUIRED]

              An expression that must evaluate to a Boolean value. Rows for which the expression evaluates to true are kept in the dataset.

          • CreateColumnsOperation (dict) --

            An operation that creates calculated columns. Columns created in one such operation form a lexical closure.

            • Columns (list) -- [REQUIRED]

              Calculated columns to create.

              • (dict) --

                A calculated column for a dataset.

                • ColumnName (string) -- [REQUIRED]

                  Column name.

                • ColumnId (string) -- [REQUIRED]

                  A unique ID to identify a calculated column. During a dataset update, if the column ID of a calculated column matches that of an existing calculated column, Amazon QuickSight preserves the existing calculated column.

                • Expression (string) -- [REQUIRED]

                  An expression that defines the calculated column.

          • RenameColumnOperation (dict) --

            An operation that renames a column.

            • ColumnName (string) -- [REQUIRED]

              The name of the column to be renamed.

            • NewColumnName (string) -- [REQUIRED]

              The new name for the column.

          • CastColumnTypeOperation (dict) --

            A transform operation that casts a column to a different type.

            • ColumnName (string) -- [REQUIRED]

              Column name.

            • NewColumnType (string) -- [REQUIRED]

              New column data type.

            • Format (string) --

              When casting a column from string to datetime type, you can supply a string in a format supported by Amazon QuickSight to denote the source data format.

          • TagColumnOperation (dict) --

            An operation that tags a column with additional information.

            • ColumnName (string) -- [REQUIRED]

              The column that this operation acts on.

            • Tags (list) -- [REQUIRED]

              The dataset column tag, currently only used for geospatial type tagging.

              • (dict) --

                A tag for a column in a TagColumnOperation structure. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

                • ColumnGeographicRole (string) --

                  A geospatial role for a column.

                • ColumnDescription (dict) --

                  A description for a column.

                  • Text (string) --

                    The text of a description for a column.

      • Source (dict) -- [REQUIRED]

        Source of this logical table.

        • JoinInstruction (dict) --

          Specifies the result of a join of two logical tables.

          • LeftOperand (string) -- [REQUIRED]

            The operand on the left side of a join.

          • RightOperand (string) -- [REQUIRED]

            The operand on the right side of a join.

          • LeftJoinKeyProperties (dict) --

            Join key properties of the left operand.

            • UniqueKey (boolean) --

              A value that indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.

          • RightJoinKeyProperties (dict) --

            Join key properties of the right operand.

            • UniqueKey (boolean) --

              A value that indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.

          • Type (string) -- [REQUIRED]

            The type of join that it is.

          • OnClause (string) -- [REQUIRED]

            The join instructions provided in the ON clause of a join.

        • PhysicalTableId (string) --

          Physical table ID.

type ImportMode:

string

param ImportMode:

[REQUIRED]

Indicates whether you want to import the data into SPICE.

type ColumnGroups:

list

param ColumnGroups:

Groupings of columns that work together in certain QuickSight features. Currently, only geospatial hierarchy is supported.

  • (dict) --

    Groupings of columns that work together in certain Amazon QuickSight features. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

    • GeoSpatialColumnGroup (dict) --

      Geospatial column group that denotes a hierarchy.

      • Name (string) -- [REQUIRED]

        A display name for the hierarchy.

      • CountryCode (string) -- [REQUIRED]

        Country code.

      • Columns (list) -- [REQUIRED]

        Columns in this hierarchy.

        • (string) --

type FieldFolders:

dict

param FieldFolders:

The folder that contains fields and nested subfolders for your dataset.

  • (string) --

    • (dict) --

      A FieldFolder element is a folder that contains fields and nested subfolders.

      • description (string) --

        The description for a field folder.

      • columns (list) --

        A folder has a list of columns. A column can only be in one folder.

        • (string) --

type Permissions:

list

param Permissions:

A list of resource permissions on the dataset.

  • (dict) --

    Permission for the resource.

    • Principal (string) -- [REQUIRED]

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

      • The ARN of an Amazon QuickSight user or group associated with a data source or dataset. (This is common.)

      • The ARN of an Amazon QuickSight user, group, or namespace associated with an analysis, dashboard, template, or theme. (This is common.)

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

    • Actions (list) -- [REQUIRED]

      The IAM action to grant or revoke permissions on.

      • (string) --

type RowLevelPermissionDataSet:

dict

param RowLevelPermissionDataSet:

The row-level security configuration for the data that you want to create.

  • Namespace (string) --

    The namespace associated with the dataset that contains permissions for RLS.

  • Arn (string) -- [REQUIRED]

    The Amazon Resource Name (ARN) of the dataset that contains permissions for RLS.

  • PermissionPolicy (string) -- [REQUIRED]

    The type of permissions to use when interpretting the permissions for RLS. DENY_ACCESS is included for backward compatibility only.

  • FormatVersion (string) --

    The user or group rules associated with the dataset that contains permissions for RLS.

    By default, FormatVersion is VERSION_1. When FormatVersion is VERSION_1, UserName and GroupName are required. When FormatVersion is VERSION_2, UserARN and GroupARN are required, and Namespace must not exist.

  • Status (string) --

    The status of the row-level security permission dataset. If enabled, the status is ENABLED. If disabled, the status is DISABLED.

type RowLevelPermissionTagConfiguration:

dict

param RowLevelPermissionTagConfiguration:

The configuration of tags on a dataset to set row-level security. Row-level security tags are currently supported for anonymous embedding only.

  • Status (string) --

    The status of row-level security tags. If enabled, the status is ENABLED. If disabled, the status is DISABLED.

  • TagRules (list) -- [REQUIRED]

    A set of rules associated with row-level security, such as the tag names and columns that they are assigned to.

    • (dict) --

      A set of rules associated with a tag.

      • TagKey (string) -- [REQUIRED]

        The unique key for a tag.

      • ColumnName (string) -- [REQUIRED]

        The column name that a tag key is assigned to.

      • TagMultiValueDelimiter (string) --

        A string that you want to use to delimit the values when you pass the values at run time. For example, you can delimit the values with a comma.

      • MatchAllValue (string) --

        A string that you want to use to filter by all the values in a column in the dataset and don’t want to list the values one by one. For example, you can use an asterisk as your match all value.

type ColumnLevelPermissionRules:

list

param ColumnLevelPermissionRules:

A set of one or more definitions of a ``ColumnLevelPermissionRule ``.

  • (dict) --

    A rule defined to grant access on one or more restricted columns. Each dataset can have multiple rules. To create a restricted column, you add it to one or more rules. Each rule must contain at least one column and at least one user or group. To be able to see a restricted column, a user or group needs to be added to a rule for that column.

    • Principals (list) --

      An array of Amazon Resource Names (ARNs) for QuickSight users or groups.

      • (string) --

    • ColumnNames (list) --

      An array of column names.

      • (string) --

type Tags:

list

param Tags:

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

  • (dict) --

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

    • Key (string) -- [REQUIRED]

      Tag key.

    • Value (string) -- [REQUIRED]

      Tag value.

rtype:

dict

returns:

Response Syntax

{
    'Arn': 'string',
    'DataSetId': 'string',
    'IngestionArn': 'string',
    'IngestionId': 'string',
    'RequestId': 'string',
    'Status': 123
}

Response Structure

  • (dict) --

    • Arn (string) --

      The Amazon Resource Name (ARN) of the dataset.

    • DataSetId (string) --

      The ID for the dataset that you want to create. This ID is unique per Region; for each Amazon Web Services account;.

    • IngestionArn (string) --

      The ARN for the ingestion, which is triggered as a result of dataset creation if the import mode is SPICE.

    • IngestionId (string) --

      The ID of the ingestion, which is triggered as a result of dataset creation if the import mode is SPICE.

    • RequestId (string) --

      The Amazon Web Services request ID for this operation.

    • Status (integer) --

      The HTTP status of the request.

DescribeDataSet (updated) Link ¶
Changes (response)
{'DataSet': {'RowLevelPermissionDataSet': {'Status': 'ENABLED | DISABLED'},
             'RowLevelPermissionTagConfiguration': {'Status': 'ENABLED | '
                                                              'DISABLED',
                                                    'TagRules': [{'ColumnName': 'string',
                                                                  'MatchAllValue': 'string',
                                                                  'TagKey': 'string',
                                                                  'TagMultiValueDelimiter': 'string'}]}}}

Describes a dataset.

See also: AWS API Documentation

Request Syntax

client.describe_data_set(
    AwsAccountId='string',
    DataSetId='string'
)
type AwsAccountId:

string

param AwsAccountId:

[REQUIRED]

The Amazon Web Services account; ID.

type DataSetId:

string

param DataSetId:

[REQUIRED]

The ID for the dataset that you want to create. This ID is unique per Region; for each Amazon Web Services account;.

rtype:

dict

returns:

Response Syntax

{
    'DataSet': {
        'Arn': 'string',
        'DataSetId': 'string',
        'Name': 'string',
        'CreatedTime': datetime(2015, 1, 1),
        'LastUpdatedTime': datetime(2015, 1, 1),
        'PhysicalTableMap': {
            'string': {
                'RelationalTable': {
                    'DataSourceArn': 'string',
                    'Catalog': 'string',
                    'Schema': 'string',
                    'Name': 'string',
                    'InputColumns': [
                        {
                            'Name': 'string',
                            'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                        },
                    ]
                },
                'CustomSql': {
                    'DataSourceArn': 'string',
                    'Name': 'string',
                    'SqlQuery': 'string',
                    'Columns': [
                        {
                            'Name': 'string',
                            'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                        },
                    ]
                },
                'S3Source': {
                    'DataSourceArn': 'string',
                    'UploadSettings': {
                        'Format': 'CSV'|'TSV'|'CLF'|'ELF'|'XLSX'|'JSON',
                        'StartFromRow': 123,
                        'ContainsHeader': True|False,
                        'TextQualifier': 'DOUBLE_QUOTE'|'SINGLE_QUOTE',
                        'Delimiter': 'string'
                    },
                    'InputColumns': [
                        {
                            'Name': 'string',
                            'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                        },
                    ]
                }
            }
        },
        'LogicalTableMap': {
            'string': {
                'Alias': 'string',
                'DataTransforms': [
                    {
                        'ProjectOperation': {
                            'ProjectedColumns': [
                                'string',
                            ]
                        },
                        'FilterOperation': {
                            'ConditionExpression': 'string'
                        },
                        'CreateColumnsOperation': {
                            'Columns': [
                                {
                                    'ColumnName': 'string',
                                    'ColumnId': 'string',
                                    'Expression': 'string'
                                },
                            ]
                        },
                        'RenameColumnOperation': {
                            'ColumnName': 'string',
                            'NewColumnName': 'string'
                        },
                        'CastColumnTypeOperation': {
                            'ColumnName': 'string',
                            'NewColumnType': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME',
                            'Format': 'string'
                        },
                        'TagColumnOperation': {
                            'ColumnName': 'string',
                            'Tags': [
                                {
                                    'ColumnGeographicRole': 'COUNTRY'|'STATE'|'COUNTY'|'CITY'|'POSTCODE'|'LONGITUDE'|'LATITUDE',
                                    'ColumnDescription': {
                                        'Text': 'string'
                                    }
                                },
                            ]
                        }
                    },
                ],
                'Source': {
                    'JoinInstruction': {
                        'LeftOperand': 'string',
                        'RightOperand': 'string',
                        'LeftJoinKeyProperties': {
                            'UniqueKey': True|False
                        },
                        'RightJoinKeyProperties': {
                            'UniqueKey': True|False
                        },
                        'Type': 'INNER'|'OUTER'|'LEFT'|'RIGHT',
                        'OnClause': 'string'
                    },
                    'PhysicalTableId': 'string'
                }
            }
        },
        'OutputColumns': [
            {
                'Name': 'string',
                'Description': 'string',
                'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'
            },
        ],
        'ImportMode': 'SPICE'|'DIRECT_QUERY',
        'ConsumedSpiceCapacityInBytes': 123,
        'ColumnGroups': [
            {
                'GeoSpatialColumnGroup': {
                    'Name': 'string',
                    'CountryCode': 'US',
                    'Columns': [
                        'string',
                    ]
                }
            },
        ],
        'FieldFolders': {
            'string': {
                'description': 'string',
                'columns': [
                    'string',
                ]
            }
        },
        'RowLevelPermissionDataSet': {
            'Namespace': 'string',
            'Arn': 'string',
            'PermissionPolicy': 'GRANT_ACCESS'|'DENY_ACCESS',
            'FormatVersion': 'VERSION_1'|'VERSION_2',
            'Status': 'ENABLED'|'DISABLED'
        },
        'RowLevelPermissionTagConfiguration': {
            'Status': 'ENABLED'|'DISABLED',
            'TagRules': [
                {
                    'TagKey': 'string',
                    'ColumnName': 'string',
                    'TagMultiValueDelimiter': 'string',
                    'MatchAllValue': 'string'
                },
            ]
        },
        'ColumnLevelPermissionRules': [
            {
                'Principals': [
                    'string',
                ],
                'ColumnNames': [
                    'string',
                ]
            },
        ]
    },
    'RequestId': 'string',
    'Status': 123
}

Response Structure

  • (dict) --

    • DataSet (dict) --

      Information on the dataset.

      • Arn (string) --

        The Amazon Resource Name (ARN) of the resource.

      • DataSetId (string) --

        The ID of the dataset.

      • Name (string) --

        A display name for the dataset.

      • CreatedTime (datetime) --

        The time that this dataset was created.

      • LastUpdatedTime (datetime) --

        The last time that this dataset was updated.

      • PhysicalTableMap (dict) --

        Declares the physical tables that are available in the underlying data sources.

        • (string) --

          • (dict) --

            A view of a data source that contains information about the shape of the data in the underlying source. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

            • RelationalTable (dict) --

              A physical table type for relational data sources.

              • DataSourceArn (string) --

                The Amazon Resource Name (ARN) for the data source.

              • Catalog (string) --

                The catalog associated with a table.

              • Schema (string) --

                The schema name. This name applies to certain relational database engines.

              • Name (string) --

                The name of the relational table.

              • InputColumns (list) --

                The column schema of the table.

                • (dict) --

                  Metadata for a column that is used as the input of a transform operation.

                  • Name (string) --

                    The name of this column in the underlying data source.

                  • Type (string) --

                    The data type of the column.

            • CustomSql (dict) --

              A physical table type built from the results of the custom SQL query.

              • DataSourceArn (string) --

                The Amazon Resource Name (ARN) of the data source.

              • Name (string) --

                A display name for the SQL query result.

              • SqlQuery (string) --

                The SQL query.

              • Columns (list) --

                The column schema from the SQL query result set.

                • (dict) --

                  Metadata for a column that is used as the input of a transform operation.

                  • Name (string) --

                    The name of this column in the underlying data source.

                  • Type (string) --

                    The data type of the column.

            • S3Source (dict) --

              A physical table type for as S3 data source.

              • DataSourceArn (string) --

                The Amazon Resource Name (ARN) for the data source.

              • UploadSettings (dict) --

                Information about the format for the S3 source file or files.

                • Format (string) --

                  File format.

                • StartFromRow (integer) --

                  A row number to start reading data from.

                • ContainsHeader (boolean) --

                  Whether the file has a header row, or the files each have a header row.

                • TextQualifier (string) --

                  Text qualifier.

                • Delimiter (string) --

                  The delimiter between values in the file.

              • InputColumns (list) --

                A physical table type for an S3 data source.

                • (dict) --

                  Metadata for a column that is used as the input of a transform operation.

                  • Name (string) --

                    The name of this column in the underlying data source.

                  • Type (string) --

                    The data type of the column.

      • LogicalTableMap (dict) --

        Configures the combination and transformation of the data from the physical tables.

        • (string) --

          • (dict) --

            A logical table is a unit that joins and that data transformations operate on. A logical table has a source, which can be either a physical table or result of a join. When a logical table points to a physical table, the logical table acts as a mutable copy of that physical table through transform operations.

            • Alias (string) --

              A display name for the logical table.

            • DataTransforms (list) --

              Transform operations that act on this logical table.

              • (dict) --

                A data transformation on a logical table. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

                • ProjectOperation (dict) --

                  An operation that projects columns. Operations that come after a projection can only refer to projected columns.

                  • ProjectedColumns (list) --

                    Projected columns.

                    • (string) --

                • FilterOperation (dict) --

                  An operation that filters rows based on some condition.

                  • ConditionExpression (string) --

                    An expression that must evaluate to a Boolean value. Rows for which the expression evaluates to true are kept in the dataset.

                • CreateColumnsOperation (dict) --

                  An operation that creates calculated columns. Columns created in one such operation form a lexical closure.

                  • Columns (list) --

                    Calculated columns to create.

                    • (dict) --

                      A calculated column for a dataset.

                      • ColumnName (string) --

                        Column name.

                      • ColumnId (string) --

                        A unique ID to identify a calculated column. During a dataset update, if the column ID of a calculated column matches that of an existing calculated column, Amazon QuickSight preserves the existing calculated column.

                      • Expression (string) --

                        An expression that defines the calculated column.

                • RenameColumnOperation (dict) --

                  An operation that renames a column.

                  • ColumnName (string) --

                    The name of the column to be renamed.

                  • NewColumnName (string) --

                    The new name for the column.

                • CastColumnTypeOperation (dict) --

                  A transform operation that casts a column to a different type.

                  • ColumnName (string) --

                    Column name.

                  • NewColumnType (string) --

                    New column data type.

                  • Format (string) --

                    When casting a column from string to datetime type, you can supply a string in a format supported by Amazon QuickSight to denote the source data format.

                • TagColumnOperation (dict) --

                  An operation that tags a column with additional information.

                  • ColumnName (string) --

                    The column that this operation acts on.

                  • Tags (list) --

                    The dataset column tag, currently only used for geospatial type tagging.

                    • (dict) --

                      A tag for a column in a TagColumnOperation structure. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

                      • ColumnGeographicRole (string) --

                        A geospatial role for a column.

                      • ColumnDescription (dict) --

                        A description for a column.

                        • Text (string) --

                          The text of a description for a column.

            • Source (dict) --

              Source of this logical table.

              • JoinInstruction (dict) --

                Specifies the result of a join of two logical tables.

                • LeftOperand (string) --

                  The operand on the left side of a join.

                • RightOperand (string) --

                  The operand on the right side of a join.

                • LeftJoinKeyProperties (dict) --

                  Join key properties of the left operand.

                  • UniqueKey (boolean) --

                    A value that indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.

                • RightJoinKeyProperties (dict) --

                  Join key properties of the right operand.

                  • UniqueKey (boolean) --

                    A value that indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.

                • Type (string) --

                  The type of join that it is.

                • OnClause (string) --

                  The join instructions provided in the ON clause of a join.

              • PhysicalTableId (string) --

                Physical table ID.

      • OutputColumns (list) --

        The list of columns after all transforms. These columns are available in templates, analyses, and dashboards.

        • (dict) --

          Output column.

          • Name (string) --

            A display name for the dataset.

          • Description (string) --

            A description for a column.

          • Type (string) --

            Type.

      • ImportMode (string) --

        A value that indicates whether you want to import the data into SPICE.

      • ConsumedSpiceCapacityInBytes (integer) --

        The amount of SPICE capacity used by this dataset. This is 0 if the dataset isn't imported into SPICE.

      • ColumnGroups (list) --

        Groupings of columns that work together in certain Amazon QuickSight features. Currently, only geospatial hierarchy is supported.

        • (dict) --

          Groupings of columns that work together in certain Amazon QuickSight features. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

          • GeoSpatialColumnGroup (dict) --

            Geospatial column group that denotes a hierarchy.

            • Name (string) --

              A display name for the hierarchy.

            • CountryCode (string) --

              Country code.

            • Columns (list) --

              Columns in this hierarchy.

              • (string) --

      • FieldFolders (dict) --

        The folder that contains fields and nested subfolders for your dataset.

        • (string) --

          • (dict) --

            A FieldFolder element is a folder that contains fields and nested subfolders.

            • description (string) --

              The description for a field folder.

            • columns (list) --

              A folder has a list of columns. A column can only be in one folder.

              • (string) --

      • RowLevelPermissionDataSet (dict) --

        The row-level security configuration for the dataset.

        • Namespace (string) --

          The namespace associated with the dataset that contains permissions for RLS.

        • Arn (string) --

          The Amazon Resource Name (ARN) of the dataset that contains permissions for RLS.

        • PermissionPolicy (string) --

          The type of permissions to use when interpretting the permissions for RLS. DENY_ACCESS is included for backward compatibility only.

        • FormatVersion (string) --

          The user or group rules associated with the dataset that contains permissions for RLS.

          By default, FormatVersion is VERSION_1. When FormatVersion is VERSION_1, UserName and GroupName are required. When FormatVersion is VERSION_2, UserARN and GroupARN are required, and Namespace must not exist.

        • Status (string) --

          The status of the row-level security permission dataset. If enabled, the status is ENABLED. If disabled, the status is DISABLED.

      • RowLevelPermissionTagConfiguration (dict) --

        The element you can use to define tags for row-level security.

        • Status (string) --

          The status of row-level security tags. If enabled, the status is ENABLED. If disabled, the status is DISABLED.

        • TagRules (list) --

          A set of rules associated with row-level security, such as the tag names and columns that they are assigned to.

          • (dict) --

            A set of rules associated with a tag.

            • TagKey (string) --

              The unique key for a tag.

            • ColumnName (string) --

              The column name that a tag key is assigned to.

            • TagMultiValueDelimiter (string) --

              A string that you want to use to delimit the values when you pass the values at run time. For example, you can delimit the values with a comma.

            • MatchAllValue (string) --

              A string that you want to use to filter by all the values in a column in the dataset and don’t want to list the values one by one. For example, you can use an asterisk as your match all value.

      • ColumnLevelPermissionRules (list) --

        A set of one or more definitions of a ``ColumnLevelPermissionRule ``.

        • (dict) --

          A rule defined to grant access on one or more restricted columns. Each dataset can have multiple rules. To create a restricted column, you add it to one or more rules. Each rule must contain at least one column and at least one user or group. To be able to see a restricted column, a user or group needs to be added to a rule for that column.

          • Principals (list) --

            An array of Amazon Resource Names (ARNs) for QuickSight users or groups.

            • (string) --

          • ColumnNames (list) --

            An array of column names.

            • (string) --

    • RequestId (string) --

      The Amazon Web Services request ID for this operation.

    • Status (integer) --

      The HTTP status of the request.

ListDataSets (updated) Link ¶
Changes (response)
{'DataSetSummaries': {'RowLevelPermissionDataSet': {'Status': 'ENABLED | '
                                                              'DISABLED'},
                      'RowLevelPermissionTagConfigurationApplied': 'boolean'}}

Lists all of the datasets belonging to the current Amazon Web Services account; in an Region;.

The permissions resource is arn:aws:quicksight:region:aws-account-id:dataset/*.

See also: AWS API Documentation

Request Syntax

client.list_data_sets(
    AwsAccountId='string',
    NextToken='string',
    MaxResults=123
)
type AwsAccountId:

string

param AwsAccountId:

[REQUIRED]

The Amazon Web Services account; ID.

type NextToken:

string

param NextToken:

The token for the next set of results, or null if there are no more results.

type MaxResults:

integer

param MaxResults:

The maximum number of results to be returned per request.

rtype:

dict

returns:

Response Syntax

{
    'DataSetSummaries': [
        {
            'Arn': 'string',
            'DataSetId': 'string',
            'Name': 'string',
            'CreatedTime': datetime(2015, 1, 1),
            'LastUpdatedTime': datetime(2015, 1, 1),
            'ImportMode': 'SPICE'|'DIRECT_QUERY',
            'RowLevelPermissionDataSet': {
                'Namespace': 'string',
                'Arn': 'string',
                'PermissionPolicy': 'GRANT_ACCESS'|'DENY_ACCESS',
                'FormatVersion': 'VERSION_1'|'VERSION_2',
                'Status': 'ENABLED'|'DISABLED'
            },
            'RowLevelPermissionTagConfigurationApplied': True|False,
            'ColumnLevelPermissionRulesApplied': True|False
        },
    ],
    'NextToken': 'string',
    'RequestId': 'string',
    'Status': 123
}

Response Structure

  • (dict) --

    • DataSetSummaries (list) --

      The list of dataset summaries.

      • (dict) --

        Dataset summary.

        • Arn (string) --

          The Amazon Resource Name (ARN) of the dataset.

        • DataSetId (string) --

          The ID of the dataset.

        • Name (string) --

          A display name for the dataset.

        • CreatedTime (datetime) --

          The time that this dataset was created.

        • LastUpdatedTime (datetime) --

          The last time that this dataset was updated.

        • ImportMode (string) --

          A value that indicates whether you want to import the data into SPICE.

        • RowLevelPermissionDataSet (dict) --

          The row-level security configuration for the dataset.

          • Namespace (string) --

            The namespace associated with the dataset that contains permissions for RLS.

          • Arn (string) --

            The Amazon Resource Name (ARN) of the dataset that contains permissions for RLS.

          • PermissionPolicy (string) --

            The type of permissions to use when interpretting the permissions for RLS. DENY_ACCESS is included for backward compatibility only.

          • FormatVersion (string) --

            The user or group rules associated with the dataset that contains permissions for RLS.

            By default, FormatVersion is VERSION_1. When FormatVersion is VERSION_1, UserName and GroupName are required. When FormatVersion is VERSION_2, UserARN and GroupARN are required, and Namespace must not exist.

          • Status (string) --

            The status of the row-level security permission dataset. If enabled, the status is ENABLED. If disabled, the status is DISABLED.

        • RowLevelPermissionTagConfigurationApplied (boolean) --

          Whether or not the row level permission tags are applied.

        • ColumnLevelPermissionRulesApplied (boolean) --

          A value that indicates if the dataset has column level permission configured.

    • NextToken (string) --

      The token for the next set of results, or null if there are no more results.

    • RequestId (string) --

      The Amazon Web Services request ID for this operation.

    • Status (integer) --

      The HTTP status of the request.

UpdateDataSet (updated) Link ¶
Changes (request)
{'RowLevelPermissionDataSet': {'Status': 'ENABLED | DISABLED'},
 'RowLevelPermissionTagConfiguration': {'Status': 'ENABLED | DISABLED',
                                        'TagRules': [{'ColumnName': 'string',
                                                      'MatchAllValue': 'string',
                                                      'TagKey': 'string',
                                                      'TagMultiValueDelimiter': 'string'}]}}

Updates a dataset.

See also: AWS API Documentation

Request Syntax

client.update_data_set(
    AwsAccountId='string',
    DataSetId='string',
    Name='string',
    PhysicalTableMap={
        'string': {
            'RelationalTable': {
                'DataSourceArn': 'string',
                'Catalog': 'string',
                'Schema': 'string',
                'Name': 'string',
                'InputColumns': [
                    {
                        'Name': 'string',
                        'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                    },
                ]
            },
            'CustomSql': {
                'DataSourceArn': 'string',
                'Name': 'string',
                'SqlQuery': 'string',
                'Columns': [
                    {
                        'Name': 'string',
                        'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                    },
                ]
            },
            'S3Source': {
                'DataSourceArn': 'string',
                'UploadSettings': {
                    'Format': 'CSV'|'TSV'|'CLF'|'ELF'|'XLSX'|'JSON',
                    'StartFromRow': 123,
                    'ContainsHeader': True|False,
                    'TextQualifier': 'DOUBLE_QUOTE'|'SINGLE_QUOTE',
                    'Delimiter': 'string'
                },
                'InputColumns': [
                    {
                        'Name': 'string',
                        'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                    },
                ]
            }
        }
    },
    LogicalTableMap={
        'string': {
            'Alias': 'string',
            'DataTransforms': [
                {
                    'ProjectOperation': {
                        'ProjectedColumns': [
                            'string',
                        ]
                    },
                    'FilterOperation': {
                        'ConditionExpression': 'string'
                    },
                    'CreateColumnsOperation': {
                        'Columns': [
                            {
                                'ColumnName': 'string',
                                'ColumnId': 'string',
                                'Expression': 'string'
                            },
                        ]
                    },
                    'RenameColumnOperation': {
                        'ColumnName': 'string',
                        'NewColumnName': 'string'
                    },
                    'CastColumnTypeOperation': {
                        'ColumnName': 'string',
                        'NewColumnType': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME',
                        'Format': 'string'
                    },
                    'TagColumnOperation': {
                        'ColumnName': 'string',
                        'Tags': [
                            {
                                'ColumnGeographicRole': 'COUNTRY'|'STATE'|'COUNTY'|'CITY'|'POSTCODE'|'LONGITUDE'|'LATITUDE',
                                'ColumnDescription': {
                                    'Text': 'string'
                                }
                            },
                        ]
                    }
                },
            ],
            'Source': {
                'JoinInstruction': {
                    'LeftOperand': 'string',
                    'RightOperand': 'string',
                    'LeftJoinKeyProperties': {
                        'UniqueKey': True|False
                    },
                    'RightJoinKeyProperties': {
                        'UniqueKey': True|False
                    },
                    'Type': 'INNER'|'OUTER'|'LEFT'|'RIGHT',
                    'OnClause': 'string'
                },
                'PhysicalTableId': 'string'
            }
        }
    },
    ImportMode='SPICE'|'DIRECT_QUERY',
    ColumnGroups=[
        {
            'GeoSpatialColumnGroup': {
                'Name': 'string',
                'CountryCode': 'US',
                'Columns': [
                    'string',
                ]
            }
        },
    ],
    FieldFolders={
        'string': {
            'description': 'string',
            'columns': [
                'string',
            ]
        }
    },
    RowLevelPermissionDataSet={
        'Namespace': 'string',
        'Arn': 'string',
        'PermissionPolicy': 'GRANT_ACCESS'|'DENY_ACCESS',
        'FormatVersion': 'VERSION_1'|'VERSION_2',
        'Status': 'ENABLED'|'DISABLED'
    },
    RowLevelPermissionTagConfiguration={
        'Status': 'ENABLED'|'DISABLED',
        'TagRules': [
            {
                'TagKey': 'string',
                'ColumnName': 'string',
                'TagMultiValueDelimiter': 'string',
                'MatchAllValue': 'string'
            },
        ]
    },
    ColumnLevelPermissionRules=[
        {
            'Principals': [
                'string',
            ],
            'ColumnNames': [
                'string',
            ]
        },
    ]
)
type AwsAccountId:

string

param AwsAccountId:

[REQUIRED]

The Amazon Web Services account; ID.

type DataSetId:

string

param DataSetId:

[REQUIRED]

The ID for the dataset that you want to update. This ID is unique per Region; for each Amazon Web Services account;.

type Name:

string

param Name:

[REQUIRED]

The display name for the dataset.

type PhysicalTableMap:

dict

param PhysicalTableMap:

[REQUIRED]

Declares the physical tables that are available in the underlying data sources.

  • (string) --

    • (dict) --

      A view of a data source that contains information about the shape of the data in the underlying source. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

      • RelationalTable (dict) --

        A physical table type for relational data sources.

        • DataSourceArn (string) -- [REQUIRED]

          The Amazon Resource Name (ARN) for the data source.

        • Catalog (string) --

          The catalog associated with a table.

        • Schema (string) --

          The schema name. This name applies to certain relational database engines.

        • Name (string) -- [REQUIRED]

          The name of the relational table.

        • InputColumns (list) -- [REQUIRED]

          The column schema of the table.

          • (dict) --

            Metadata for a column that is used as the input of a transform operation.

            • Name (string) -- [REQUIRED]

              The name of this column in the underlying data source.

            • Type (string) -- [REQUIRED]

              The data type of the column.

      • CustomSql (dict) --

        A physical table type built from the results of the custom SQL query.

        • DataSourceArn (string) -- [REQUIRED]

          The Amazon Resource Name (ARN) of the data source.

        • Name (string) -- [REQUIRED]

          A display name for the SQL query result.

        • SqlQuery (string) -- [REQUIRED]

          The SQL query.

        • Columns (list) --

          The column schema from the SQL query result set.

          • (dict) --

            Metadata for a column that is used as the input of a transform operation.

            • Name (string) -- [REQUIRED]

              The name of this column in the underlying data source.

            • Type (string) -- [REQUIRED]

              The data type of the column.

      • S3Source (dict) --

        A physical table type for as S3 data source.

        • DataSourceArn (string) -- [REQUIRED]

          The Amazon Resource Name (ARN) for the data source.

        • UploadSettings (dict) --

          Information about the format for the S3 source file or files.

          • Format (string) --

            File format.

          • StartFromRow (integer) --

            A row number to start reading data from.

          • ContainsHeader (boolean) --

            Whether the file has a header row, or the files each have a header row.

          • TextQualifier (string) --

            Text qualifier.

          • Delimiter (string) --

            The delimiter between values in the file.

        • InputColumns (list) -- [REQUIRED]

          A physical table type for an S3 data source.

          • (dict) --

            Metadata for a column that is used as the input of a transform operation.

            • Name (string) -- [REQUIRED]

              The name of this column in the underlying data source.

            • Type (string) -- [REQUIRED]

              The data type of the column.

type LogicalTableMap:

dict

param LogicalTableMap:

Configures the combination and transformation of the data from the physical tables.

  • (string) --

    • (dict) --

      A logical table is a unit that joins and that data transformations operate on. A logical table has a source, which can be either a physical table or result of a join. When a logical table points to a physical table, the logical table acts as a mutable copy of that physical table through transform operations.

      • Alias (string) -- [REQUIRED]

        A display name for the logical table.

      • DataTransforms (list) --

        Transform operations that act on this logical table.

        • (dict) --

          A data transformation on a logical table. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

          • ProjectOperation (dict) --

            An operation that projects columns. Operations that come after a projection can only refer to projected columns.

            • ProjectedColumns (list) -- [REQUIRED]

              Projected columns.

              • (string) --

          • FilterOperation (dict) --

            An operation that filters rows based on some condition.

            • ConditionExpression (string) -- [REQUIRED]

              An expression that must evaluate to a Boolean value. Rows for which the expression evaluates to true are kept in the dataset.

          • CreateColumnsOperation (dict) --

            An operation that creates calculated columns. Columns created in one such operation form a lexical closure.

            • Columns (list) -- [REQUIRED]

              Calculated columns to create.

              • (dict) --

                A calculated column for a dataset.

                • ColumnName (string) -- [REQUIRED]

                  Column name.

                • ColumnId (string) -- [REQUIRED]

                  A unique ID to identify a calculated column. During a dataset update, if the column ID of a calculated column matches that of an existing calculated column, Amazon QuickSight preserves the existing calculated column.

                • Expression (string) -- [REQUIRED]

                  An expression that defines the calculated column.

          • RenameColumnOperation (dict) --

            An operation that renames a column.

            • ColumnName (string) -- [REQUIRED]

              The name of the column to be renamed.

            • NewColumnName (string) -- [REQUIRED]

              The new name for the column.

          • CastColumnTypeOperation (dict) --

            A transform operation that casts a column to a different type.

            • ColumnName (string) -- [REQUIRED]

              Column name.

            • NewColumnType (string) -- [REQUIRED]

              New column data type.

            • Format (string) --

              When casting a column from string to datetime type, you can supply a string in a format supported by Amazon QuickSight to denote the source data format.

          • TagColumnOperation (dict) --

            An operation that tags a column with additional information.

            • ColumnName (string) -- [REQUIRED]

              The column that this operation acts on.

            • Tags (list) -- [REQUIRED]

              The dataset column tag, currently only used for geospatial type tagging.

              • (dict) --

                A tag for a column in a TagColumnOperation structure. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

                • ColumnGeographicRole (string) --

                  A geospatial role for a column.

                • ColumnDescription (dict) --

                  A description for a column.

                  • Text (string) --

                    The text of a description for a column.

      • Source (dict) -- [REQUIRED]

        Source of this logical table.

        • JoinInstruction (dict) --

          Specifies the result of a join of two logical tables.

          • LeftOperand (string) -- [REQUIRED]

            The operand on the left side of a join.

          • RightOperand (string) -- [REQUIRED]

            The operand on the right side of a join.

          • LeftJoinKeyProperties (dict) --

            Join key properties of the left operand.

            • UniqueKey (boolean) --

              A value that indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.

          • RightJoinKeyProperties (dict) --

            Join key properties of the right operand.

            • UniqueKey (boolean) --

              A value that indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.

          • Type (string) -- [REQUIRED]

            The type of join that it is.

          • OnClause (string) -- [REQUIRED]

            The join instructions provided in the ON clause of a join.

        • PhysicalTableId (string) --

          Physical table ID.

type ImportMode:

string

param ImportMode:

[REQUIRED]

Indicates whether you want to import the data into SPICE.

type ColumnGroups:

list

param ColumnGroups:

Groupings of columns that work together in certain QuickSight features. Currently, only geospatial hierarchy is supported.

  • (dict) --

    Groupings of columns that work together in certain Amazon QuickSight features. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

    • GeoSpatialColumnGroup (dict) --

      Geospatial column group that denotes a hierarchy.

      • Name (string) -- [REQUIRED]

        A display name for the hierarchy.

      • CountryCode (string) -- [REQUIRED]

        Country code.

      • Columns (list) -- [REQUIRED]

        Columns in this hierarchy.

        • (string) --

type FieldFolders:

dict

param FieldFolders:

The folder that contains fields and nested subfolders for your dataset.

  • (string) --

    • (dict) --

      A FieldFolder element is a folder that contains fields and nested subfolders.

      • description (string) --

        The description for a field folder.

      • columns (list) --

        A folder has a list of columns. A column can only be in one folder.

        • (string) --

type RowLevelPermissionDataSet:

dict

param RowLevelPermissionDataSet:

The row-level security configuration for the data you want to create.

  • Namespace (string) --

    The namespace associated with the dataset that contains permissions for RLS.

  • Arn (string) -- [REQUIRED]

    The Amazon Resource Name (ARN) of the dataset that contains permissions for RLS.

  • PermissionPolicy (string) -- [REQUIRED]

    The type of permissions to use when interpretting the permissions for RLS. DENY_ACCESS is included for backward compatibility only.

  • FormatVersion (string) --

    The user or group rules associated with the dataset that contains permissions for RLS.

    By default, FormatVersion is VERSION_1. When FormatVersion is VERSION_1, UserName and GroupName are required. When FormatVersion is VERSION_2, UserARN and GroupARN are required, and Namespace must not exist.

  • Status (string) --

    The status of the row-level security permission dataset. If enabled, the status is ENABLED. If disabled, the status is DISABLED.

type RowLevelPermissionTagConfiguration:

dict

param RowLevelPermissionTagConfiguration:

The configuration of tags on a dataset to set row-level security. Row-level security tags are currently supported for anonymous embedding only.

  • Status (string) --

    The status of row-level security tags. If enabled, the status is ENABLED. If disabled, the status is DISABLED.

  • TagRules (list) -- [REQUIRED]

    A set of rules associated with row-level security, such as the tag names and columns that they are assigned to.

    • (dict) --

      A set of rules associated with a tag.

      • TagKey (string) -- [REQUIRED]

        The unique key for a tag.

      • ColumnName (string) -- [REQUIRED]

        The column name that a tag key is assigned to.

      • TagMultiValueDelimiter (string) --

        A string that you want to use to delimit the values when you pass the values at run time. For example, you can delimit the values with a comma.

      • MatchAllValue (string) --

        A string that you want to use to filter by all the values in a column in the dataset and don’t want to list the values one by one. For example, you can use an asterisk as your match all value.

type ColumnLevelPermissionRules:

list

param ColumnLevelPermissionRules:

A set of one or more definitions of a ``ColumnLevelPermissionRule ``.

  • (dict) --

    A rule defined to grant access on one or more restricted columns. Each dataset can have multiple rules. To create a restricted column, you add it to one or more rules. Each rule must contain at least one column and at least one user or group. To be able to see a restricted column, a user or group needs to be added to a rule for that column.

    • Principals (list) --

      An array of Amazon Resource Names (ARNs) for QuickSight users or groups.

      • (string) --

    • ColumnNames (list) --

      An array of column names.

      • (string) --

rtype:

dict

returns:

Response Syntax

{
    'Arn': 'string',
    'DataSetId': 'string',
    'IngestionArn': 'string',
    'IngestionId': 'string',
    'RequestId': 'string',
    'Status': 123
}

Response Structure

  • (dict) --

    • Arn (string) --

      The Amazon Resource Name (ARN) of the dataset.

    • DataSetId (string) --

      The ID for the dataset that you want to create. This ID is unique per Region; for each Amazon Web Services account;.

    • IngestionArn (string) --

      The ARN for the ingestion, which is triggered as a result of dataset creation if the import mode is SPICE.

    • IngestionId (string) --

      The ID of the ingestion, which is triggered as a result of dataset creation if the import mode is SPICE.

    • RequestId (string) --

      The Amazon Web Services request ID for this operation.

    • Status (integer) --

      The HTTP status of the request.