:doc:`RDS <../../rds>` / Client / describe_reserved_db_instances_offerings

****************************************
describe_reserved_db_instances_offerings
****************************************



.. py:method:: RDS.Client.describe_reserved_db_instances_offerings(**kwargs)

  

  Lists available reserved DB instance offerings.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DescribeReservedDBInstancesOfferings>`_  


  **Request Syntax**
  ::

    response = client.describe_reserved_db_instances_offerings(
        ReservedDBInstancesOfferingId='string',
        DBInstanceClass='string',
        Duration='string',
        ProductDescription='string',
        OfferingType='string',
        MultiAZ=True|False,
        Filters=[
            {
                'Name': 'string',
                'Values': [
                    'string',
                ]
            },
        ],
        MaxRecords=123,
        Marker='string'
    )
    
  :type ReservedDBInstancesOfferingId: string
  :param ReservedDBInstancesOfferingId: 

    The offering identifier filter value. Specify this parameter to show only the available offering that matches the specified reservation identifier.

     

    Example: ``438012d3-4052-4cc7-b2e3-8d3372e0e706``

    

  
  :type DBInstanceClass: string
  :param DBInstanceClass: 

    The DB instance class filter value. Specify this parameter to show only the available offerings matching the specified DB instance class.

    

  
  :type Duration: string
  :param Duration: 

    Duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

     

    Valid Values: ``1 | 3 | 31536000 | 94608000``

    

  
  :type ProductDescription: string
  :param ProductDescription: 

    Product description filter value. Specify this parameter to show only the available offerings that contain the specified product description.

     

    .. note::

      

      The results show offerings that partially match the filter value.

      

    

  
  :type OfferingType: string
  :param OfferingType: 

    The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

     

    Valid Values: ``"Partial Upfront" | "All Upfront" | "No Upfront"``

    

  
  :type MultiAZ: boolean
  :param MultiAZ: 

    Specifies whether to show only those reservations that support Multi-AZ.

    

  
  :type Filters: list
  :param Filters: 

    This parameter isn't currently supported.

    

  
    - *(dict) --* 

      A filter name and value pair that is used to return a more specific list of results from a describe operation. Filters can be used to match a set of resources by specific criteria, such as IDs. The filters supported by a describe operation are documented with the describe operation.

       

      .. note::

        

        Currently, wildcards are not supported in filters.

        

       

      The following actions can be filtered:

       

      
      * ``DescribeDBClusterBacktracks``
       
      * ``DescribeDBClusterEndpoints``
       
      * ``DescribeDBClusters``
       
      * ``DescribeDBInstances``
       
      * ``DescribeDBRecommendations``
       
      * ``DescribeDBShardGroups``
       
      * ``DescribePendingMaintenanceActions``
      

      

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

        The name of the filter. Filter names are case-sensitive.

        

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

        One or more filter values. Filter values are case-sensitive.

        

      
        - *(string) --* 

        
    
    

  :type MaxRecords: integer
  :param MaxRecords: 

    The maximum number of records to include in the response. If more than the ``MaxRecords`` value is available, a pagination token called a marker is included in the response so you can retrieve the remaining results.

     

    Default: 100

     

    Constraints: Minimum 20, maximum 100.

    

  
  :type Marker: string
  :param Marker: 

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ``MaxRecords``.

    

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

    
    ::

      {
          'Marker': 'string',
          'ReservedDBInstancesOfferings': [
              {
                  'ReservedDBInstancesOfferingId': 'string',
                  'DBInstanceClass': 'string',
                  'Duration': 123,
                  'FixedPrice': 123.0,
                  'UsagePrice': 123.0,
                  'CurrencyCode': 'string',
                  'ProductDescription': 'string',
                  'OfferingType': 'string',
                  'MultiAZ': True|False,
                  'RecurringCharges': [
                      {
                          'RecurringChargeAmount': 123.0,
                          'RecurringChargeFrequency': 'string'
                      },
                  ]
              },
          ]
      }
      
    **Response Structure**

    

    - *(dict) --* 

      Contains the result of a successful invocation of the ``DescribeReservedDBInstancesOfferings`` action.

      
      

      - **Marker** *(string) --* 

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ``MaxRecords``.

        
      

      - **ReservedDBInstancesOfferings** *(list) --* 

        A list of reserved DB instance offerings.

        
        

        - *(dict) --* 

          This data type is used as a response element in the ``DescribeReservedDBInstancesOfferings`` action.

          
          

          - **ReservedDBInstancesOfferingId** *(string) --* 

            The offering identifier.

            
          

          - **DBInstanceClass** *(string) --* 

            The DB instance class for the reserved DB instance.

            
          

          - **Duration** *(integer) --* 

            The duration of the offering in seconds.

            
          

          - **FixedPrice** *(float) --* 

            The fixed price charged for this offering.

            
          

          - **UsagePrice** *(float) --* 

            The hourly price charged for this offering.

            
          

          - **CurrencyCode** *(string) --* 

            The currency code for the reserved DB instance offering.

            
          

          - **ProductDescription** *(string) --* 

            The database engine used by the offering.

            
          

          - **OfferingType** *(string) --* 

            The offering type.

            
          

          - **MultiAZ** *(boolean) --* 

            Indicates whether the offering applies to Multi-AZ deployments.

            
          

          - **RecurringCharges** *(list) --* 

            The recurring price charged to run this reserved DB instance.

            
            

            - *(dict) --* 

              This data type is used as a response element in the ``DescribeReservedDBInstances`` and ``DescribeReservedDBInstancesOfferings`` actions.

              
              

              - **RecurringChargeAmount** *(float) --* 

                The amount of the recurring charge.

                
              

              - **RecurringChargeFrequency** *(string) --* 

                The frequency of the recurring charge.

                
          
        
      
    
  
  **Exceptions**
  
  *   :py:class:`RDS.Client.exceptions.ReservedDBInstancesOfferingNotFoundFault`

  

  **Examples**

  This example lists information for all reserved DB instance offerings for the specified DB instance class, duration, product, offering type, and availability zone settings.
  ::

    response = client.describe_reserved_db_instances_offerings(
        DBInstanceClass='db.t2.micro',
        Duration='1y',
        MultiAZ=False,
        OfferingType='No Upfront',
        ProductDescription='mysql',
    )
    
    print(response)

  
  Expected Output:
  ::

    {
        'ResponseMetadata': {
            '...': '...',
        },
    }

  