Amazon QuickSight · Arazzo Workflow

Amazon QuickSight Classify Datasets by Import Mode

Version 1.0.0

List an account's datasets and branch on whether any use SPICE import mode.

1 workflow 1 source API 1 provider
View Spec View on GitHub AnalyticsBIBusiness IntelligenceDashboardsMachine LearningReportingVisualizationArazzoWorkflows

Provider

amazon-quicksight

Workflows

classify-datasets-by-import-mode
Inventory datasets and branch on the presence of SPICE-backed datasets.
Lists the datasets in an account and branches on whether any dataset uses SPICE import mode so SPICE capacity can be reviewed when present.
2 steps inputs: AwsAccountId outputs: dataSetSummaries, spiceReviewDataSetSummaries
1
listDataSets
ListDataSets
List the datasets in the account and branch on whether any of them are materialized into SPICE.
2
reviewSpiceCapacity
ListDataSets
Re-list the datasets to capture the current set of SPICE-backed datasets for the capacity review record.

Source API Descriptions

Arazzo Workflow Specification

amazon-quicksight-classify-datasets-by-import-mode-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Amazon QuickSight Classify Datasets by Import Mode
  summary: List an account's datasets and branch on whether any use SPICE import mode.
  description: >-
    QuickSight datasets are either materialized into SPICE or queried live with
    DIRECT_QUERY, and the mix drives capacity planning. The workflow lists the
    datasets in an account and branches on whether the account contains any SPICE
    datasets, routing to a capacity-review outcome when it does and to a clean
    end when every dataset is direct-query. Each step spells out its request
    inline so the flow can be read and executed without opening the underlying
    OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: quicksightApi
  url: ../openapi/amazon-quicksight-openapi.yml
  type: openapi
workflows:
- workflowId: classify-datasets-by-import-mode
  summary: Inventory datasets and branch on the presence of SPICE-backed datasets.
  description: >-
    Lists the datasets in an account and branches on whether any dataset uses
    SPICE import mode so SPICE capacity can be reviewed when present.
  inputs:
    type: object
    required:
    - AwsAccountId
    properties:
      AwsAccountId:
        type: string
        description: The AWS account id to classify QuickSight datasets for.
  steps:
  - stepId: listDataSets
    description: >-
      List the datasets in the account and branch on whether any of them are
      materialized into SPICE.
    operationId: ListDataSets
    parameters:
    - name: AwsAccountId
      in: path
      value: $inputs.AwsAccountId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      dataSetSummaries: $response.body#/DataSetSummaries
    onSuccess:
    - name: hasSpiceDatasets
      type: goto
      stepId: reviewSpiceCapacity
      criteria:
      - context: $response.body
        condition: $.DataSetSummaries[?(@.ImportMode == 'SPICE')]
        type: jsonpath
    - name: directQueryOnly
      type: end
      criteria:
      - context: $response.body
        condition: $.DataSetSummaries[?(@.ImportMode == 'SPICE')].length == 0
        type: jsonpath
  - stepId: reviewSpiceCapacity
    description: >-
      Re-list the datasets to capture the current set of SPICE-backed datasets
      for the capacity review record.
    operationId: ListDataSets
    parameters:
    - name: AwsAccountId
      in: path
      value: $inputs.AwsAccountId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      dataSetSummaries: $response.body#/DataSetSummaries
  outputs:
    dataSetSummaries: $steps.listDataSets.outputs.dataSetSummaries
    spiceReviewDataSetSummaries: $steps.reviewSpiceCapacity.outputs.dataSetSummaries