:doc:`GreengrassV2 <../../greengrassv2>` / Client / list_components

***************
list_components
***************



.. py:method:: GreengrassV2.Client.list_components(**kwargs)

  

  Retrieves a paginated list of component summaries. This list includes components that you have permission to view.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/ListComponents>`_  


  **Request Syntax**
  ::

    response = client.list_components(
        scope='PRIVATE'|'PUBLIC',
        maxResults=123,
        nextToken='string'
    )
    
  :type scope: string
  :param scope: 

    The scope of the components to list.

     

    Default: ``PRIVATE``

    

  
  :type maxResults: integer
  :param maxResults: 

    The maximum number of results to be returned per paginated request.

    

  
  :type nextToken: string
  :param nextToken: 

    The token to be used for the next set of paginated results.

    

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

    
    ::

      {
          'components': [
              {
                  'arn': 'string',
                  'componentName': 'string',
                  'latestVersion': {
                      'arn': 'string',
                      'componentVersion': 'string',
                      'creationTimestamp': datetime(2015, 1, 1),
                      'description': 'string',
                      'publisher': 'string',
                      'platforms': [
                          {
                              'name': 'string',
                              'attributes': {
                                  'string': 'string'
                              }
                          },
                      ]
                  }
              },
          ],
          'nextToken': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **components** *(list) --* 

        A list that summarizes each component.

        
        

        - *(dict) --* 

          Contains information about a component.

          
          

          - **arn** *(string) --* 

            The `ARN <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html>`__ of the component version.

            
          

          - **componentName** *(string) --* 

            The name of the component.

            
          

          - **latestVersion** *(dict) --* 

            The latest version of the component and its details.

            
            

            - **arn** *(string) --* 

              The `ARN <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html>`__ of the component version.

              
            

            - **componentVersion** *(string) --* 

              The version of the component.

              
            

            - **creationTimestamp** *(datetime) --* 

              The time at which the component was created, expressed in ISO 8601 format.

              
            

            - **description** *(string) --* 

              The description of the component version.

              
            

            - **publisher** *(string) --* 

              The publisher of the component version.

              
            

            - **platforms** *(list) --* 

              The platforms that the component version supports.

              
              

              - *(dict) --* 

                Contains information about a platform that a component supports.

                
                

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

                  The friendly name of the platform. This name helps you identify the platform.

                   

                  If you omit this parameter, IoT Greengrass creates a friendly name from the ``os`` and ``architecture`` of the platform.

                  
                

                - **attributes** *(dict) --* 

                  A dictionary of attributes for the platform. The IoT Greengrass Core software defines the ``os`` and ``architecture`` by default. You can specify additional platform attributes for a core device when you deploy the Greengrass nucleus component. For more information, see the `Greengrass nucleus component <https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-component.html>`__ in the *IoT Greengrass V2 Developer Guide*.

                  
                  

                  - *(string) --* 
                    

                    - *(string) --* 
              
            
            
          
        
      
    
      

      - **nextToken** *(string) --* 

        The token for the next set of results, or null if there are no additional results.

        
  
  **Exceptions**
  
  *   :py:class:`GreengrassV2.Client.exceptions.ValidationException`

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

  
  *   :py:class:`GreengrassV2.Client.exceptions.ResourceNotFoundException`

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

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

  