:doc:`BillingandCostManagementDashboards <../../bcm-dashboards>` / Client / create_dashboard

****************
create_dashboard
****************



.. py:method:: BillingandCostManagementDashboards.Client.create_dashboard(**kwargs)

  

  Creates a new dashboard that can contain multiple widgets displaying cost and usage data. You can add custom widgets or use predefined widgets, arranging them in your preferred layout.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/bcm-dashboards-2025-08-18/CreateDashboard>`_  


  **Request Syntax**
  ::

    response = client.create_dashboard(
        name='string',
        description='string',
        widgets=[
            {
                'title': 'string',
                'description': 'string',
                'width': 123,
                'height': 123,
                'horizontalOffset': 123,
                'configs': [
                    {
                        'queryParameters': {
                            'costAndUsage': {
                                'metrics': [
                                    'AmortizedCost'|'BlendedCost'|'NetAmortizedCost'|'NetUnblendedCost'|'NormalizedUsageAmount'|'UnblendedCost'|'UsageQuantity'|'SpendCoveredBySavingsPlans'|'Hour'|'Unit'|'Cost',
                                ],
                                'timeRange': {
                                    'startTime': {
                                        'type': 'ABSOLUTE'|'RELATIVE',
                                        'value': 'string'
                                    },
                                    'endTime': {
                                        'type': 'ABSOLUTE'|'RELATIVE',
                                        'value': 'string'
                                    }
                                },
                                'granularity': 'HOURLY'|'DAILY'|'MONTHLY',
                                'groupBy': [
                                    {
                                        'key': 'string',
                                        'type': 'DIMENSION'|'TAG'|'COST_CATEGORY'
                                    },
                                ],
                                'filter': {
                                    'or': [
                                        {'... recursive ...'},
                                    ],
                                    'and': [
                                        {'... recursive ...'},
                                    ],
                                    'not': {'... recursive ...'},
                                    'dimensions': {
                                        'key': 'AZ'|'INSTANCE_TYPE'|'LINKED_ACCOUNT'|'OPERATION'|'PURCHASE_TYPE'|'REGION'|'SERVICE'|'USAGE_TYPE'|'USAGE_TYPE_GROUP'|'RECORD_TYPE'|'RESOURCE_ID'|'SUBSCRIPTION_ID'|'TAG_KEY'|'OPERATING_SYSTEM'|'TENANCY'|'BILLING_ENTITY'|'RESERVATION_ID'|'COST_CATEGORY_NAME'|'DATABASE_ENGINE'|'LEGAL_ENTITY_NAME'|'SAVINGS_PLANS_TYPE'|'INSTANCE_TYPE_FAMILY'|'CACHE_ENGINE'|'DEPLOYMENT_OPTION'|'SCOPE'|'PLATFORM',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    },
                                    'tags': {
                                        'key': 'string',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    },
                                    'costCategories': {
                                        'key': 'string',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    }
                                }
                            },
                            'savingsPlansCoverage': {
                                'timeRange': {
                                    'startTime': {
                                        'type': 'ABSOLUTE'|'RELATIVE',
                                        'value': 'string'
                                    },
                                    'endTime': {
                                        'type': 'ABSOLUTE'|'RELATIVE',
                                        'value': 'string'
                                    }
                                },
                                'metrics': [
                                    'AmortizedCost'|'BlendedCost'|'NetAmortizedCost'|'NetUnblendedCost'|'NormalizedUsageAmount'|'UnblendedCost'|'UsageQuantity'|'SpendCoveredBySavingsPlans'|'Hour'|'Unit'|'Cost',
                                ],
                                'granularity': 'HOURLY'|'DAILY'|'MONTHLY',
                                'groupBy': [
                                    {
                                        'key': 'string',
                                        'type': 'DIMENSION'|'TAG'|'COST_CATEGORY'
                                    },
                                ],
                                'filter': {
                                    'or': [
                                        {'... recursive ...'},
                                    ],
                                    'and': [
                                        {'... recursive ...'},
                                    ],
                                    'not': {'... recursive ...'},
                                    'dimensions': {
                                        'key': 'AZ'|'INSTANCE_TYPE'|'LINKED_ACCOUNT'|'OPERATION'|'PURCHASE_TYPE'|'REGION'|'SERVICE'|'USAGE_TYPE'|'USAGE_TYPE_GROUP'|'RECORD_TYPE'|'RESOURCE_ID'|'SUBSCRIPTION_ID'|'TAG_KEY'|'OPERATING_SYSTEM'|'TENANCY'|'BILLING_ENTITY'|'RESERVATION_ID'|'COST_CATEGORY_NAME'|'DATABASE_ENGINE'|'LEGAL_ENTITY_NAME'|'SAVINGS_PLANS_TYPE'|'INSTANCE_TYPE_FAMILY'|'CACHE_ENGINE'|'DEPLOYMENT_OPTION'|'SCOPE'|'PLATFORM',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    },
                                    'tags': {
                                        'key': 'string',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    },
                                    'costCategories': {
                                        'key': 'string',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    }
                                }
                            },
                            'savingsPlansUtilization': {
                                'timeRange': {
                                    'startTime': {
                                        'type': 'ABSOLUTE'|'RELATIVE',
                                        'value': 'string'
                                    },
                                    'endTime': {
                                        'type': 'ABSOLUTE'|'RELATIVE',
                                        'value': 'string'
                                    }
                                },
                                'granularity': 'HOURLY'|'DAILY'|'MONTHLY',
                                'filter': {
                                    'or': [
                                        {'... recursive ...'},
                                    ],
                                    'and': [
                                        {'... recursive ...'},
                                    ],
                                    'not': {'... recursive ...'},
                                    'dimensions': {
                                        'key': 'AZ'|'INSTANCE_TYPE'|'LINKED_ACCOUNT'|'OPERATION'|'PURCHASE_TYPE'|'REGION'|'SERVICE'|'USAGE_TYPE'|'USAGE_TYPE_GROUP'|'RECORD_TYPE'|'RESOURCE_ID'|'SUBSCRIPTION_ID'|'TAG_KEY'|'OPERATING_SYSTEM'|'TENANCY'|'BILLING_ENTITY'|'RESERVATION_ID'|'COST_CATEGORY_NAME'|'DATABASE_ENGINE'|'LEGAL_ENTITY_NAME'|'SAVINGS_PLANS_TYPE'|'INSTANCE_TYPE_FAMILY'|'CACHE_ENGINE'|'DEPLOYMENT_OPTION'|'SCOPE'|'PLATFORM',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    },
                                    'tags': {
                                        'key': 'string',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    },
                                    'costCategories': {
                                        'key': 'string',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    }
                                }
                            },
                            'reservationCoverage': {
                                'timeRange': {
                                    'startTime': {
                                        'type': 'ABSOLUTE'|'RELATIVE',
                                        'value': 'string'
                                    },
                                    'endTime': {
                                        'type': 'ABSOLUTE'|'RELATIVE',
                                        'value': 'string'
                                    }
                                },
                                'groupBy': [
                                    {
                                        'key': 'string',
                                        'type': 'DIMENSION'|'TAG'|'COST_CATEGORY'
                                    },
                                ],
                                'granularity': 'HOURLY'|'DAILY'|'MONTHLY',
                                'filter': {
                                    'or': [
                                        {'... recursive ...'},
                                    ],
                                    'and': [
                                        {'... recursive ...'},
                                    ],
                                    'not': {'... recursive ...'},
                                    'dimensions': {
                                        'key': 'AZ'|'INSTANCE_TYPE'|'LINKED_ACCOUNT'|'OPERATION'|'PURCHASE_TYPE'|'REGION'|'SERVICE'|'USAGE_TYPE'|'USAGE_TYPE_GROUP'|'RECORD_TYPE'|'RESOURCE_ID'|'SUBSCRIPTION_ID'|'TAG_KEY'|'OPERATING_SYSTEM'|'TENANCY'|'BILLING_ENTITY'|'RESERVATION_ID'|'COST_CATEGORY_NAME'|'DATABASE_ENGINE'|'LEGAL_ENTITY_NAME'|'SAVINGS_PLANS_TYPE'|'INSTANCE_TYPE_FAMILY'|'CACHE_ENGINE'|'DEPLOYMENT_OPTION'|'SCOPE'|'PLATFORM',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    },
                                    'tags': {
                                        'key': 'string',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    },
                                    'costCategories': {
                                        'key': 'string',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    }
                                },
                                'metrics': [
                                    'AmortizedCost'|'BlendedCost'|'NetAmortizedCost'|'NetUnblendedCost'|'NormalizedUsageAmount'|'UnblendedCost'|'UsageQuantity'|'SpendCoveredBySavingsPlans'|'Hour'|'Unit'|'Cost',
                                ]
                            },
                            'reservationUtilization': {
                                'timeRange': {
                                    'startTime': {
                                        'type': 'ABSOLUTE'|'RELATIVE',
                                        'value': 'string'
                                    },
                                    'endTime': {
                                        'type': 'ABSOLUTE'|'RELATIVE',
                                        'value': 'string'
                                    }
                                },
                                'groupBy': [
                                    {
                                        'key': 'string',
                                        'type': 'DIMENSION'|'TAG'|'COST_CATEGORY'
                                    },
                                ],
                                'granularity': 'HOURLY'|'DAILY'|'MONTHLY',
                                'filter': {
                                    'or': [
                                        {'... recursive ...'},
                                    ],
                                    'and': [
                                        {'... recursive ...'},
                                    ],
                                    'not': {'... recursive ...'},
                                    'dimensions': {
                                        'key': 'AZ'|'INSTANCE_TYPE'|'LINKED_ACCOUNT'|'OPERATION'|'PURCHASE_TYPE'|'REGION'|'SERVICE'|'USAGE_TYPE'|'USAGE_TYPE_GROUP'|'RECORD_TYPE'|'RESOURCE_ID'|'SUBSCRIPTION_ID'|'TAG_KEY'|'OPERATING_SYSTEM'|'TENANCY'|'BILLING_ENTITY'|'RESERVATION_ID'|'COST_CATEGORY_NAME'|'DATABASE_ENGINE'|'LEGAL_ENTITY_NAME'|'SAVINGS_PLANS_TYPE'|'INSTANCE_TYPE_FAMILY'|'CACHE_ENGINE'|'DEPLOYMENT_OPTION'|'SCOPE'|'PLATFORM',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    },
                                    'tags': {
                                        'key': 'string',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    },
                                    'costCategories': {
                                        'key': 'string',
                                        'values': [
                                            'string',
                                        ],
                                        'matchOptions': [
                                            'EQUALS'|'ABSENT'|'STARTS_WITH'|'ENDS_WITH'|'CONTAINS'|'GREATER_THAN_OR_EQUAL'|'CASE_SENSITIVE'|'CASE_INSENSITIVE',
                                        ]
                                    }
                                }
                            }
                        },
                        'displayConfig': {
                            'graph': {
                                'string': {
                                    'visualType': 'LINE'|'BAR'|'STACK'
                                }
                            },
                            'table': {}
                            
                        }
                    },
                ]
            },
        ],
        resourceTags=[
            {
                'key': 'string',
                'value': 'string'
            },
        ]
    )
    
  :type name: string
  :param name: **[REQUIRED]** 

    The name of the dashboard. The name must be unique within your account.

    

  
  :type description: string
  :param description: 

    A description of the dashboard's purpose or contents.

    

  
  :type widgets: list
  :param widgets: **[REQUIRED]** 

    An array of widget configurations that define the visualizations to be displayed in the dashboard. Each dashboard can contain up to 20 widgets.

    

  
    - *(dict) --* 

      A configurable visualization component within a dashboard that displays specific cost and usage metrics. Each widget can show data as charts or tables and includes settings for data querying, filtering, and visual presentation.

      

    
      - **title** *(string) --* **[REQUIRED]** 

        The title of the widget.

        

      
      - **description** *(string) --* 

        A description of the widget's purpose or the data it displays.

        

      
      - **width** *(integer) --* 

        The width of the widget in column spans. The dashboard layout consists of a grid system.

        

      
      - **height** *(integer) --* 

        The height of the widget in row spans. The dashboard layout consists of a grid system.

        

      
      - **horizontalOffset** *(integer) --* 

        Specifies the starting column position of the widget in the dashboard's grid layout. Used to control widget placement.

        

      
      - **configs** *(list) --* **[REQUIRED]** 

        An array of configurations that define the data queries and display settings for the widget.

        

      
        - *(dict) --* 

          Defines the complete configuration for a widget, including data retrieval settings and visualization preferences.

          

        
          - **queryParameters** *(dict) --* **[REQUIRED]** 

            The parameters that define what data the widget should retrieve and how it should be filtered or grouped.

            .. note::    This is a Tagged Union structure. Only one of the     following top level keys can be set: ``costAndUsage``, ``savingsPlansCoverage``, ``savingsPlansUtilization``, ``reservationCoverage``, ``reservationUtilization``. 

          
            - **costAndUsage** *(dict) --* 

              The parameters for querying cost and usage data, including metrics, time range, granularity, grouping dimensions, and filters.

              

            
              - **metrics** *(list) --* **[REQUIRED]** 

                The specific cost and usage metrics to retrieve.

                 

                .. note::

                  

                  Valid values for CostAndUsageQuery metrics are ``AmortizedCost``, ``BlendedCost``, ``NetAmortizedCost``, ``NetUnblendedCost``, ``NormalizedUsageAmount``, ``UnblendedCost``, and ``UsageQuantity``.

                  

                

              
                - *(string) --* 

                
            
              - **timeRange** *(dict) --* **[REQUIRED]** 

                The time period for which to retrieve data. Can be specified as absolute dates or relative time periods.

                

              
                - **startTime** *(dict) --* **[REQUIRED]** 

                  The start time of the date range for querying data.

                  

                
                  - **type** *(string) --* **[REQUIRED]** 

                    The type of date/time value: ``ABSOLUTE`` for specific dates or ``RELATIVE`` for dynamic time periods.

                    

                  
                  - **value** *(string) --* **[REQUIRED]** 

                    The actual date/time value.

                    

                  
                
                - **endTime** *(dict) --* **[REQUIRED]** 

                  The end time of the date range for querying data.

                  

                
                  - **type** *(string) --* **[REQUIRED]** 

                    The type of date/time value: ``ABSOLUTE`` for specific dates or ``RELATIVE`` for dynamic time periods.

                    

                  
                  - **value** *(string) --* **[REQUIRED]** 

                    The actual date/time value.

                    

                  
                
              
              - **granularity** *(string) --* **[REQUIRED]** 

                The granularity of the retrieved data: ``HOURLY``, ``DAILY``, or ``MONTHLY``.

                

              
              - **groupBy** *(list) --* 

                Specifies how to group the retrieved data, such as by ``SERVICE``, ``ACCOUNT``, or ``TAG``.

                

              
                - *(dict) --* 

                  Specifies how to group cost and usage data.

                  

                
                  - **key** *(string) --* **[REQUIRED]** 

                    The key to use for grouping cost and usage data.

                    

                  
                  - **type** *(string) --* 

                    The type of grouping to apply.

                    

                  
                
            
              - **filter** *(dict) --* 

                The filter expression to be applied to the cost and usage data.

                

              
                - **or** *(list) --* 

                  A list of expressions to combine with OR logic.

                  

                
                  - *(dict) --* 

                    Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                    

                  
              
                - **and** *(list) --* 

                  A list of expressions to combine with AND logic.

                  

                
                  - *(dict) --* 

                    Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                    

                  
              
                - **not** *(dict) --* 

                  An expression to negate with NOT logic.

                  

                
                - **dimensions** *(dict) --* 

                  The dimension values to include in the filter expression.

                  

                
                  - **key** *(string) --* **[REQUIRED]** 

                    The key of the dimension to filter on (for example, ``SERVICE``, ``USAGE_TYPE``, or ``OPERATION``).

                    

                  
                  - **values** *(list) --* **[REQUIRED]** 

                    The values to match for the specified dimension key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for dimension values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
                - **tags** *(dict) --* 

                  The tag values to include in the filter expression.

                  

                
                  - **key** *(string) --* 

                    The key of the tag to filter on.

                    

                  
                  - **values** *(list) --* 

                    The values to match for the specified tag key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for tag values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
                - **costCategories** *(dict) --* 

                  The cost category values to include in the filter expression.

                  

                
                  - **key** *(string) --* 

                    The key of the cost category to filter on.

                    

                  
                  - **values** *(list) --* 

                    The values to match for the specified cost category key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for cost category values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
              
            
            - **savingsPlansCoverage** *(dict) --* 

              The parameters for querying Savings Plans coverage data, showing how much of your eligible compute usage is covered by Savings Plans.

              

            
              - **timeRange** *(dict) --* **[REQUIRED]** 

                Defines a time period with explicit start and end times for data queries.

                

              
                - **startTime** *(dict) --* **[REQUIRED]** 

                  The start time of the date range for querying data.

                  

                
                  - **type** *(string) --* **[REQUIRED]** 

                    The type of date/time value: ``ABSOLUTE`` for specific dates or ``RELATIVE`` for dynamic time periods.

                    

                  
                  - **value** *(string) --* **[REQUIRED]** 

                    The actual date/time value.

                    

                  
                
                - **endTime** *(dict) --* **[REQUIRED]** 

                  The end time of the date range for querying data.

                  

                
                  - **type** *(string) --* **[REQUIRED]** 

                    The type of date/time value: ``ABSOLUTE`` for specific dates or ``RELATIVE`` for dynamic time periods.

                    

                  
                  - **value** *(string) --* **[REQUIRED]** 

                    The actual date/time value.

                    

                  
                
              
              - **metrics** *(list) --* 

                The coverage metrics to include in the results.

                 

                .. note::

                  

                  Valid value for SavingsPlansCoverageQuery metrics is ``SpendCoveredBySavingsPlans``.

                  

                

              
                - *(string) --* 

                
            
              - **granularity** *(string) --* 

                The time granularity of the retrieved data: ``HOURLY``, ``DAILY``, or ``MONTHLY``.

                

              
              - **groupBy** *(list) --* 

                Specifies how to group the Savings Plans coverage data, such as by service or instance family.

                

              
                - *(dict) --* 

                  Specifies how to group cost and usage data.

                  

                
                  - **key** *(string) --* **[REQUIRED]** 

                    The key to use for grouping cost and usage data.

                    

                  
                  - **type** *(string) --* 

                    The type of grouping to apply.

                    

                  
                
            
              - **filter** *(dict) --* 

                Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                

              
                - **or** *(list) --* 

                  A list of expressions to combine with OR logic.

                  

                
                  - *(dict) --* 

                    Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                    

                  
              
                - **and** *(list) --* 

                  A list of expressions to combine with AND logic.

                  

                
                  - *(dict) --* 

                    Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                    

                  
              
                - **not** *(dict) --* 

                  An expression to negate with NOT logic.

                  

                
                - **dimensions** *(dict) --* 

                  The dimension values to include in the filter expression.

                  

                
                  - **key** *(string) --* **[REQUIRED]** 

                    The key of the dimension to filter on (for example, ``SERVICE``, ``USAGE_TYPE``, or ``OPERATION``).

                    

                  
                  - **values** *(list) --* **[REQUIRED]** 

                    The values to match for the specified dimension key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for dimension values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
                - **tags** *(dict) --* 

                  The tag values to include in the filter expression.

                  

                
                  - **key** *(string) --* 

                    The key of the tag to filter on.

                    

                  
                  - **values** *(list) --* 

                    The values to match for the specified tag key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for tag values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
                - **costCategories** *(dict) --* 

                  The cost category values to include in the filter expression.

                  

                
                  - **key** *(string) --* 

                    The key of the cost category to filter on.

                    

                  
                  - **values** *(list) --* 

                    The values to match for the specified cost category key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for cost category values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
              
            
            - **savingsPlansUtilization** *(dict) --* 

              The parameters for querying Savings Plans utilization data, showing how effectively your Savings Plans are being used.

              

            
              - **timeRange** *(dict) --* **[REQUIRED]** 

                Defines a time period with explicit start and end times for data queries.

                

              
                - **startTime** *(dict) --* **[REQUIRED]** 

                  The start time of the date range for querying data.

                  

                
                  - **type** *(string) --* **[REQUIRED]** 

                    The type of date/time value: ``ABSOLUTE`` for specific dates or ``RELATIVE`` for dynamic time periods.

                    

                  
                  - **value** *(string) --* **[REQUIRED]** 

                    The actual date/time value.

                    

                  
                
                - **endTime** *(dict) --* **[REQUIRED]** 

                  The end time of the date range for querying data.

                  

                
                  - **type** *(string) --* **[REQUIRED]** 

                    The type of date/time value: ``ABSOLUTE`` for specific dates or ``RELATIVE`` for dynamic time periods.

                    

                  
                  - **value** *(string) --* **[REQUIRED]** 

                    The actual date/time value.

                    

                  
                
              
              - **granularity** *(string) --* 

                The time granularity of the retrieved data: HOURLY, DAILY, or MONTHLY.

                

              
              - **filter** *(dict) --* 

                Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                

              
                - **or** *(list) --* 

                  A list of expressions to combine with OR logic.

                  

                
                  - *(dict) --* 

                    Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                    

                  
              
                - **and** *(list) --* 

                  A list of expressions to combine with AND logic.

                  

                
                  - *(dict) --* 

                    Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                    

                  
              
                - **not** *(dict) --* 

                  An expression to negate with NOT logic.

                  

                
                - **dimensions** *(dict) --* 

                  The dimension values to include in the filter expression.

                  

                
                  - **key** *(string) --* **[REQUIRED]** 

                    The key of the dimension to filter on (for example, ``SERVICE``, ``USAGE_TYPE``, or ``OPERATION``).

                    

                  
                  - **values** *(list) --* **[REQUIRED]** 

                    The values to match for the specified dimension key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for dimension values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
                - **tags** *(dict) --* 

                  The tag values to include in the filter expression.

                  

                
                  - **key** *(string) --* 

                    The key of the tag to filter on.

                    

                  
                  - **values** *(list) --* 

                    The values to match for the specified tag key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for tag values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
                - **costCategories** *(dict) --* 

                  The cost category values to include in the filter expression.

                  

                
                  - **key** *(string) --* 

                    The key of the cost category to filter on.

                    

                  
                  - **values** *(list) --* 

                    The values to match for the specified cost category key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for cost category values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
              
            
            - **reservationCoverage** *(dict) --* 

              The parameters for querying Reserved Instance coverage data, showing how much of your eligible instance usage is covered by Reserved Instances.

              

            
              - **timeRange** *(dict) --* **[REQUIRED]** 

                Defines a time period with explicit start and end times for data queries.

                

              
                - **startTime** *(dict) --* **[REQUIRED]** 

                  The start time of the date range for querying data.

                  

                
                  - **type** *(string) --* **[REQUIRED]** 

                    The type of date/time value: ``ABSOLUTE`` for specific dates or ``RELATIVE`` for dynamic time periods.

                    

                  
                  - **value** *(string) --* **[REQUIRED]** 

                    The actual date/time value.

                    

                  
                
                - **endTime** *(dict) --* **[REQUIRED]** 

                  The end time of the date range for querying data.

                  

                
                  - **type** *(string) --* **[REQUIRED]** 

                    The type of date/time value: ``ABSOLUTE`` for specific dates or ``RELATIVE`` for dynamic time periods.

                    

                  
                  - **value** *(string) --* **[REQUIRED]** 

                    The actual date/time value.

                    

                  
                
              
              - **groupBy** *(list) --* 

                Specifies how to group the Reserved Instance coverage data, such as by service, Region, or instance type.

                

              
                - *(dict) --* 

                  Specifies how to group cost and usage data.

                  

                
                  - **key** *(string) --* **[REQUIRED]** 

                    The key to use for grouping cost and usage data.

                    

                  
                  - **type** *(string) --* 

                    The type of grouping to apply.

                    

                  
                
            
              - **granularity** *(string) --* 

                The time granularity of the retrieved data: ``HOURLY``, ``DAILY``, or ``MONTHLY``.

                

              
              - **filter** *(dict) --* 

                Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                

              
                - **or** *(list) --* 

                  A list of expressions to combine with OR logic.

                  

                
                  - *(dict) --* 

                    Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                    

                  
              
                - **and** *(list) --* 

                  A list of expressions to combine with AND logic.

                  

                
                  - *(dict) --* 

                    Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                    

                  
              
                - **not** *(dict) --* 

                  An expression to negate with NOT logic.

                  

                
                - **dimensions** *(dict) --* 

                  The dimension values to include in the filter expression.

                  

                
                  - **key** *(string) --* **[REQUIRED]** 

                    The key of the dimension to filter on (for example, ``SERVICE``, ``USAGE_TYPE``, or ``OPERATION``).

                    

                  
                  - **values** *(list) --* **[REQUIRED]** 

                    The values to match for the specified dimension key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for dimension values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
                - **tags** *(dict) --* 

                  The tag values to include in the filter expression.

                  

                
                  - **key** *(string) --* 

                    The key of the tag to filter on.

                    

                  
                  - **values** *(list) --* 

                    The values to match for the specified tag key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for tag values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
                - **costCategories** *(dict) --* 

                  The cost category values to include in the filter expression.

                  

                
                  - **key** *(string) --* 

                    The key of the cost category to filter on.

                    

                  
                  - **values** *(list) --* 

                    The values to match for the specified cost category key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for cost category values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
              
              - **metrics** *(list) --* 

                The coverage metrics to include in the results.

                 

                .. note::

                  

                  Valid values for ReservationCoverageQuery metrics are ``Hour``, ``Unit``, and ``Cost``.

                  

                

              
                - *(string) --* 

                
            
            
            - **reservationUtilization** *(dict) --* 

              The parameters for querying Reserved Instance utilization data, showing how effectively your Reserved Instances are being used.

              

            
              - **timeRange** *(dict) --* **[REQUIRED]** 

                Defines a time period with explicit start and end times for data queries.

                

              
                - **startTime** *(dict) --* **[REQUIRED]** 

                  The start time of the date range for querying data.

                  

                
                  - **type** *(string) --* **[REQUIRED]** 

                    The type of date/time value: ``ABSOLUTE`` for specific dates or ``RELATIVE`` for dynamic time periods.

                    

                  
                  - **value** *(string) --* **[REQUIRED]** 

                    The actual date/time value.

                    

                  
                
                - **endTime** *(dict) --* **[REQUIRED]** 

                  The end time of the date range for querying data.

                  

                
                  - **type** *(string) --* **[REQUIRED]** 

                    The type of date/time value: ``ABSOLUTE`` for specific dates or ``RELATIVE`` for dynamic time periods.

                    

                  
                  - **value** *(string) --* **[REQUIRED]** 

                    The actual date/time value.

                    

                  
                
              
              - **groupBy** *(list) --* 

                Specifies how to group the Reserved Instance utilization data, such as by service, Region, or instance type.

                

              
                - *(dict) --* 

                  Specifies how to group cost and usage data.

                  

                
                  - **key** *(string) --* **[REQUIRED]** 

                    The key to use for grouping cost and usage data.

                    

                  
                  - **type** *(string) --* 

                    The type of grouping to apply.

                    

                  
                
            
              - **granularity** *(string) --* 

                The time granularity of the retrieved data: ``HOURLY``, ``DAILY``, or ``MONTHLY``.

                

              
              - **filter** *(dict) --* 

                Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                

              
                - **or** *(list) --* 

                  A list of expressions to combine with OR logic.

                  

                
                  - *(dict) --* 

                    Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                    

                  
              
                - **and** *(list) --* 

                  A list of expressions to combine with AND logic.

                  

                
                  - *(dict) --* 

                    Defines complex filtering conditions using logical operators ( ``AND``, ``OR``, ``NOT``) and various filter types.

                    

                  
              
                - **not** *(dict) --* 

                  An expression to negate with NOT logic.

                  

                
                - **dimensions** *(dict) --* 

                  The dimension values to include in the filter expression.

                  

                
                  - **key** *(string) --* **[REQUIRED]** 

                    The key of the dimension to filter on (for example, ``SERVICE``, ``USAGE_TYPE``, or ``OPERATION``).

                    

                  
                  - **values** *(list) --* **[REQUIRED]** 

                    The values to match for the specified dimension key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for dimension values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
                - **tags** *(dict) --* 

                  The tag values to include in the filter expression.

                  

                
                  - **key** *(string) --* 

                    The key of the tag to filter on.

                    

                  
                  - **values** *(list) --* 

                    The values to match for the specified tag key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for tag values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
                - **costCategories** *(dict) --* 

                  The cost category values to include in the filter expression.

                  

                
                  - **key** *(string) --* 

                    The key of the cost category to filter on.

                    

                  
                  - **values** *(list) --* 

                    The values to match for the specified cost category key.

                    

                  
                    - *(string) --* 

                    
                
                  - **matchOptions** *(list) --* 

                    The match options for cost category values, such as ``EQUALS``, ``CONTAINS``, ``STARTS_WITH``, or ``ENDS_WITH``.

                    

                  
                    - *(string) --* 

                    
                
                
              
            
          
          - **displayConfig** *(dict) --* **[REQUIRED]** 

            The configuration that determines how the retrieved data should be visualized in the widget.

            .. note::    This is a Tagged Union structure. Only one of the     following top level keys can be set: ``graph``, ``table``. 

          
            - **graph** *(dict) --* 

              The configuration for graphical display of the widget data, including chart type and visual options.

              

            
              - *(string) --* 

              
                - *(dict) --* 

                  Defines the visual representation settings for widget data, including the visualization type, styling options, and display preferences for different metric types.

                  

                
                  - **visualType** *(string) --* **[REQUIRED]** 

                    The type of visualization to use for the data.

                    

                  
                
          
        
            - **table** *(dict) --* 

              The configuration for tabular display of the widget data.

              

            
            
          
        
    
    

  :type resourceTags: list
  :param resourceTags: 

    The tags to apply to the dashboard resource for organization and management.

    

  
    - *(dict) --* 

      A key-value pair that can be attached to a dashboard for organization and management purposes.

      

    
      - **key** *(string) --* **[REQUIRED]** 

        The key of the tag to be attached to the dashboard resource.

        

      
      - **value** *(string) --* **[REQUIRED]** 

        The value of the tag to be attached to the dashboard resource.

        

      
    

  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'arn': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **arn** *(string) --* 

        The ARN of the newly created dashboard.

        
  
  **Exceptions**
  
  *   :py:class:`BillingandCostManagementDashboards.Client.exceptions.ThrottlingException`

  
  *   :py:class:`BillingandCostManagementDashboards.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`BillingandCostManagementDashboards.Client.exceptions.InternalServerException`

  
  *   :py:class:`BillingandCostManagementDashboards.Client.exceptions.ValidationException`

  
  *   :py:class:`BillingandCostManagementDashboards.Client.exceptions.ServiceQuotaExceededException`

  