:doc:`Kinesis <../../kinesis>` / Client / describe_stream_summary

***********************
describe_stream_summary
***********************



.. py:method:: Kinesis.Client.describe_stream_summary(**kwargs)

  

  Provides a summarized description of the specified Kinesis data stream without the shard list.

   

  .. note::

    

    When invoking this API, you must use either the ``StreamARN`` or the ``StreamName`` parameter, or both. It is recommended that you use the ``StreamARN`` input parameter when you invoke this API.

    

   

  The information returned includes the stream name, Amazon Resource Name (ARN), status, record retention period, approximate creation time, monitoring, encryption details, and open shard count.

   

   DescribeStreamSummary has a limit of 20 transactions per second per account.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/DescribeStreamSummary>`_  


  **Request Syntax**
  ::

    response = client.describe_stream_summary(
        StreamName='string',
        StreamARN='string',
        StreamId='string'
    )
    
  :type StreamName: string
  :param StreamName: 

    The name of the stream to describe.

    

  
  :type StreamARN: string
  :param StreamARN: 

    The ARN of the stream.

    

  
  :type StreamId: string
  :param StreamId: 

    Not Implemented. Reserved for future use.

    

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

    
    ::

      {
          'StreamDescriptionSummary': {
              'StreamName': 'string',
              'StreamARN': 'string',
              'StreamId': 'string',
              'StreamStatus': 'CREATING'|'DELETING'|'ACTIVE'|'UPDATING',
              'StreamModeDetails': {
                  'StreamMode': 'PROVISIONED'|'ON_DEMAND'
              },
              'RetentionPeriodHours': 123,
              'StreamCreationTimestamp': datetime(2015, 1, 1),
              'EnhancedMonitoring': [
                  {
                      'ShardLevelMetrics': [
                          'IncomingBytes'|'IncomingRecords'|'OutgoingBytes'|'OutgoingRecords'|'WriteProvisionedThroughputExceeded'|'ReadProvisionedThroughputExceeded'|'IteratorAgeMilliseconds'|'ALL',
                      ]
                  },
              ],
              'EncryptionType': 'NONE'|'KMS',
              'KeyId': 'string',
              'OpenShardCount': 123,
              'ConsumerCount': 123,
              'WarmThroughput': {
                  'TargetMiBps': 123,
                  'CurrentMiBps': 123
              },
              'MaxRecordSizeInKiB': 123
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **StreamDescriptionSummary** *(dict) --* 

        A  StreamDescriptionSummary containing information about the stream.

        
        

        - **StreamName** *(string) --* 

          The name of the stream being described.

          
        

        - **StreamARN** *(string) --* 

          The Amazon Resource Name (ARN) for the stream being described.

          
        

        - **StreamId** *(string) --* 

          Not Implemented. Reserved for future use.

          
        

        - **StreamStatus** *(string) --* 

          The current status of the stream being described. The stream status is one of the following states:

           

          
          * ``CREATING`` - The stream is being created. Kinesis Data Streams immediately returns and sets ``StreamStatus`` to ``CREATING``.
           
          * ``DELETING`` - The stream is being deleted. The specified stream is in the ``DELETING`` state until Kinesis Data Streams completes the deletion.
           
          * ``ACTIVE`` - The stream exists and is ready for read and write operations or deletion. You should perform read and write operations only on an ``ACTIVE`` stream.
           
          * ``UPDATING`` - Shards in the stream are being merged or split. Read and write operations continue to work while the stream is in the ``UPDATING`` state.
          

          
        

        - **StreamModeDetails** *(dict) --* 

          Specifies the capacity mode to which you want to set your data stream. Currently, in Kinesis Data Streams, you can choose between an **on-demand** ycapacity mode and a **provisioned** capacity mode for your data streams.

          
          

          - **StreamMode** *(string) --* 

            Specifies the capacity mode to which you want to set your data stream. Currently, in Kinesis Data Streams, you can choose between an **on-demand** capacity mode and a **provisioned** capacity mode for your data streams.

            
      
        

        - **RetentionPeriodHours** *(integer) --* 

          The current retention period, in hours.

          
        

        - **StreamCreationTimestamp** *(datetime) --* 

          The approximate time that the stream was created.

          
        

        - **EnhancedMonitoring** *(list) --* 

          Represents the current enhanced monitoring settings of the stream.

          
          

          - *(dict) --* 

            Represents enhanced metrics types.

            
            

            - **ShardLevelMetrics** *(list) --* 

              List of shard-level metrics.

               

              The following are the valid shard-level metrics. The value " ``ALL``" enhances every metric.

               

              
              * ``IncomingBytes``
               
              * ``IncomingRecords``
               
              * ``OutgoingBytes``
               
              * ``OutgoingRecords``
               
              * ``WriteProvisionedThroughputExceeded``
               
              * ``ReadProvisionedThroughputExceeded``
               
              * ``IteratorAgeMilliseconds``
               
              * ``ALL``
              

               

              For more information, see `Monitoring the Amazon Kinesis Data Streams Service with Amazon CloudWatch <https://docs.aws.amazon.com/kinesis/latest/dev/monitoring-with-cloudwatch.html>`__ in the *Amazon Kinesis Data Streams Developer Guide*.

              
              

              - *(string) --* 
          
        
      
        

        - **EncryptionType** *(string) --* 

          The encryption type used. This value is one of the following:

           

          
          * ``KMS``
           
          * ``NONE``
          

          
        

        - **KeyId** *(string) --* 

          The GUID for the customer-managed Amazon Web Services KMS key to use for encryption. This value can be a globally unique identifier, a fully specified ARN to either an alias or a key, or an alias name prefixed by "alias/".You can also use a master key owned by Kinesis Data Streams by specifying the alias ``aws/kinesis``.

           

          
          * Key ARN example: ``arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012``
           
          * Alias ARN example: ``arn:aws:kms:us-east-1:123456789012:alias/MyAliasName``
           
          * Globally unique key ID example: ``12345678-1234-1234-1234-123456789012``
           
          * Alias name example: ``alias/MyAliasName``
           
          * Master key owned by Kinesis Data Streams: ``alias/aws/kinesis``
          

          
        

        - **OpenShardCount** *(integer) --* 

          The number of open shards in the stream.

          
        

        - **ConsumerCount** *(integer) --* 

          The number of enhanced fan-out consumers registered with the stream.

          
        

        - **WarmThroughput** *(dict) --* 

          The warm throughput in MB/s for the stream. This represents the throughput capacity that will be immediately available for write operations.

          
          

          - **TargetMiBps** *(integer) --* 

            The target warm throughput value on the stream. This indicates that the stream is currently scaling towards this target value.

            
          

          - **CurrentMiBps** *(integer) --* 

            The current warm throughput value on the stream. This is the write throughput in MiBps that the stream is currently scaled to handle.

            
      
        

        - **MaxRecordSizeInKiB** *(integer) --* 

          The maximum record size of a single record in kibibyte (KiB) that you can write to, and read from a stream.

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

  
  *   :py:class:`Kinesis.Client.exceptions.LimitExceededException`

  
  *   :py:class:`Kinesis.Client.exceptions.InvalidArgumentException`

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

  