:doc:`BillingandCostManagementPricingCalculator <../../bcm-pricing-calculator>` / Client / create_workload_estimate

************************
create_workload_estimate
************************



.. py:method:: BillingandCostManagementPricingCalculator.Client.create_workload_estimate(**kwargs)

  

  Creates a new workload estimate to model costs for a specific workload.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/bcm-pricing-calculator-2024-06-19/CreateWorkloadEstimate>`_  


  **Request Syntax**
  ::

    response = client.create_workload_estimate(
        name='string',
        clientToken='string',
        rateType='BEFORE_DISCOUNTS'|'AFTER_DISCOUNTS'|'AFTER_DISCOUNTS_AND_COMMITMENTS',
        tags={
            'string': 'string'
        }
    )
    
  :type name: string
  :param name: **[REQUIRED]** 

    A descriptive name for the workload estimate.

    

  
  :type clientToken: string
  :param clientToken: 

    A unique, case-sensitive identifier to ensure idempotency of the request.

    This field is autopopulated if not provided.

  
  :type rateType: string
  :param rateType: 

    The type of pricing rates to use for the estimate.

    

  
  :type tags: dict
  :param tags: 

    The tags to apply to the workload estimate.

    

  
    - *(string) --* 

    
      - *(string) --* 

      


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

    
    ::

      {
          'id': 'string',
          'name': 'string',
          'createdAt': datetime(2015, 1, 1),
          'expiresAt': datetime(2015, 1, 1),
          'rateType': 'BEFORE_DISCOUNTS'|'AFTER_DISCOUNTS'|'AFTER_DISCOUNTS_AND_COMMITMENTS',
          'rateTimestamp': datetime(2015, 1, 1),
          'status': 'UPDATING'|'VALID'|'INVALID'|'ACTION_NEEDED',
          'totalCost': 123.0,
          'costCurrency': 'USD',
          'failureMessage': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 

      Mixin for common fields returned by CRUD APIs

      
      

      - **id** *(string) --* 

        The unique identifier for the created workload estimate.

        
      

      - **name** *(string) --* 

        The name of the created workload estimate.

        
      

      - **createdAt** *(datetime) --* 

        The timestamp when the workload estimate was created.

        
      

      - **expiresAt** *(datetime) --* 

        The timestamp when the workload estimate will expire.

        
      

      - **rateType** *(string) --* 

        The type of pricing rates used for the estimate.

        
      

      - **rateTimestamp** *(datetime) --* 

        The timestamp of the pricing rates used for the estimate.

        
      

      - **status** *(string) --* 

        The current status of the workload estimate.

        
      

      - **totalCost** *(float) --* 

        The total estimated cost for the workload.

        
      

      - **costCurrency** *(string) --* 

        The currency of the estimated cost.

        
      

      - **failureMessage** *(string) --* 

        An error message if the workload estimate creation failed.

        
  
  **Exceptions**
  
  *   :py:class:`BillingandCostManagementPricingCalculator.Client.exceptions.ConflictException`

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

  
  *   :py:class:`BillingandCostManagementPricingCalculator.Client.exceptions.DataUnavailableException`

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

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

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

  
  *   :py:class:`BillingandCostManagementPricingCalculator.Client.exceptions.ThrottlingException`

  