:doc:`SavingsPlans <../../savingsplans>` / Client / create_savings_plan

*******************
create_savings_plan
*******************



.. py:method:: SavingsPlans.Client.create_savings_plan(**kwargs)

  

  Creates a Savings Plan.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/savingsplans-2019-06-28/CreateSavingsPlan>`_  


  **Request Syntax**
  ::

    response = client.create_savings_plan(
        savingsPlanOfferingId='string',
        commitment='string',
        upfrontPaymentAmount='string',
        purchaseTime=datetime(2015, 1, 1),
        clientToken='string',
        tags={
            'string': 'string'
        }
    )
    
  :type savingsPlanOfferingId: string
  :param savingsPlanOfferingId: **[REQUIRED]** 

    The ID of the offering.

    

  
  :type commitment: string
  :param commitment: **[REQUIRED]** 

    The hourly commitment, in the same currency of the ``savingsPlanOfferingId``. This is a value between 0.001 and 1 million. You cannot specify more than five digits after the decimal point.

    

  
  :type upfrontPaymentAmount: string
  :param upfrontPaymentAmount: 

    The up-front payment amount. This is a whole number between 50 and 99 percent of the total value of the Savings Plan. This parameter is only supported if the payment option is ``Partial Upfront``.

    

  
  :type purchaseTime: datetime
  :param purchaseTime: 

    The purchase time of the Savings Plan in UTC format (YYYY-MM-DDTHH:MM:SSZ).

    

  
  :type clientToken: string
  :param clientToken: 

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

    This field is autopopulated if not provided.

  
  :type tags: dict
  :param tags: 

    One or more tags.

    

  
    - *(string) --* 

    
      - *(string) --* 

      


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

    
    ::

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

    

    - *(dict) --* 
      

      - **savingsPlanId** *(string) --* 

        The ID of the Savings Plan.

        
  
  **Exceptions**
  
  *   :py:class:`SavingsPlans.Client.exceptions.ResourceNotFoundException`

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

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

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

  