:doc:`Athena <../../athena>` / Paginator / ListTableMetadata

*****************
ListTableMetadata
*****************



.. py:class:: Athena.Paginator.ListTableMetadata

  ::

    
    paginator = client.get_paginator('list_table_metadata')

  
  

  .. py:method:: paginate(**kwargs)

    Creates an iterator that will paginate through responses from :py:meth:`Athena.Client.list_table_metadata`.

    See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListTableMetadata>`_    


    **Request Syntax**
    ::

      response_iterator = paginator.paginate(
          CatalogName='string',
          DatabaseName='string',
          Expression='string',
          WorkGroup='string',
          PaginationConfig={
              'MaxItems': 123,
              'PageSize': 123,
              'StartingToken': 'string'
          }
      )
      
    :type CatalogName: string
    :param CatalogName: **[REQUIRED]** 

      The name of the data catalog for which table metadata should be returned.

      

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

      The name of the database for which table metadata should be returned.

      

    
    :type Expression: string
    :param Expression: 

      A regex filter that pattern-matches table names. If no expression is supplied, metadata for all tables are listed.

      

    
    :type WorkGroup: string
    :param WorkGroup: 

      The name of the workgroup for which the metadata is being fetched. Required if requesting an IAM Identity Center enabled Glue Data Catalog.

      

    
    :type PaginationConfig: dict
    :param PaginationConfig: 

      A dictionary that provides parameters to control pagination.

      

    
      - **MaxItems** *(integer) --* 

        The total number of items to return. If the total number of items available is more than the value specified in max-items then a ``NextToken`` will be provided in the output that you can use to resume pagination.

        

      
      - **PageSize** *(integer) --* 

        The size of each page.

        

      
      - **StartingToken** *(string) --* 

        A token to specify where to start paginating. This is the ``NextToken`` from a previous response.

        

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

      
      ::

        {
            'TableMetadataList': [
                {
                    'Name': 'string',
                    'CreateTime': datetime(2015, 1, 1),
                    'LastAccessTime': datetime(2015, 1, 1),
                    'TableType': 'string',
                    'Columns': [
                        {
                            'Name': 'string',
                            'Type': 'string',
                            'Comment': 'string'
                        },
                    ],
                    'PartitionKeys': [
                        {
                            'Name': 'string',
                            'Type': 'string',
                            'Comment': 'string'
                        },
                    ],
                    'Parameters': {
                        'string': 'string'
                    }
                },
            ],
            
        }
        
      **Response Structure**

      

      - *(dict) --* 
        

        - **TableMetadataList** *(list) --* 

          A list of table metadata.

          
          

          - *(dict) --* 

            Contains metadata for a table.

            
            

            - **Name** *(string) --* 

              The name of the table.

              
            

            - **CreateTime** *(datetime) --* 

              The time that the table was created.

              
            

            - **LastAccessTime** *(datetime) --* 

              The last time the table was accessed.

              
            

            - **TableType** *(string) --* 

              The type of table. In Athena, only ``EXTERNAL_TABLE`` is supported.

              
            

            - **Columns** *(list) --* 

              A list of the columns in the table.

              
              

              - *(dict) --* 

                Contains metadata for a column in a table.

                
                

                - **Name** *(string) --* 

                  The name of the column.

                  
                

                - **Type** *(string) --* 

                  The data type of the column.

                  
                

                - **Comment** *(string) --* 

                  Optional information about the column.

                  
            
          
            

            - **PartitionKeys** *(list) --* 

              A list of the partition keys in the table.

              
              

              - *(dict) --* 

                Contains metadata for a column in a table.

                
                

                - **Name** *(string) --* 

                  The name of the column.

                  
                

                - **Type** *(string) --* 

                  The data type of the column.

                  
                

                - **Comment** *(string) --* 

                  Optional information about the column.

                  
            
          
            

            - **Parameters** *(dict) --* 

              A set of custom key/value pairs for table properties.

              
              

              - *(string) --* 
                

                - *(string) --* 
          
        
        
      
    