:doc:`NeptuneData <../../neptunedata>` / Client / get_propertygraph_summary

*************************
get_propertygraph_summary
*************************



.. py:method:: NeptuneData.Client.get_propertygraph_summary(**kwargs)

  

  Gets a graph summary for a property graph.

   

  When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the `neptune-db\:GetGraphSummary <https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#getgraphsummary>`__ IAM action in that cluster.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/neptunedata-2023-08-01/GetPropertygraphSummary>`_  


  **Request Syntax**
  ::

    response = client.get_propertygraph_summary(
        mode='basic'|'detailed'
    )
    
  :type mode: string
  :param mode: 

    Mode can take one of two values: ``BASIC`` (the default), and ``DETAILED``.

    

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

    
    ::

      {
          'statusCode': 123,
          'payload': {
              'version': 'string',
              'lastStatisticsComputationTime': datetime(2015, 1, 1),
              'graphSummary': {
                  'numNodes': 123,
                  'numEdges': 123,
                  'numNodeLabels': 123,
                  'numEdgeLabels': 123,
                  'nodeLabels': [
                      'string',
                  ],
                  'edgeLabels': [
                      'string',
                  ],
                  'numNodeProperties': 123,
                  'numEdgeProperties': 123,
                  'nodeProperties': [
                      {
                          'string': 123
                      },
                  ],
                  'edgeProperties': [
                      {
                          'string': 123
                      },
                  ],
                  'totalNodePropertyValues': 123,
                  'totalEdgePropertyValues': 123,
                  'nodeStructures': [
                      {
                          'count': 123,
                          'nodeProperties': [
                              'string',
                          ],
                          'distinctOutgoingEdgeLabels': [
                              'string',
                          ]
                      },
                  ],
                  'edgeStructures': [
                      {
                          'count': 123,
                          'edgeProperties': [
                              'string',
                          ]
                      },
                  ]
              }
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **statusCode** *(integer) --* 

        The HTTP return code of the request. If the request succeeded, the code is 200.

        
      

      - **payload** *(dict) --* 

        Payload containing the property graph summary response.

        
        

        - **version** *(string) --* 

          The version of this graph summary response.

          
        

        - **lastStatisticsComputationTime** *(datetime) --* 

          The timestamp, in ISO 8601 format, of the time at which Neptune last computed statistics.

          
        

        - **graphSummary** *(dict) --* 

          The graph summary.

          
          

          - **numNodes** *(integer) --* 

            The number of nodes in the graph.

            
          

          - **numEdges** *(integer) --* 

            The number of edges in the graph.

            
          

          - **numNodeLabels** *(integer) --* 

            The number of distinct node labels in the graph.

            
          

          - **numEdgeLabels** *(integer) --* 

            The number of distinct edge labels in the graph.

            
          

          - **nodeLabels** *(list) --* 

            A list of the distinct node labels in the graph.

            
            

            - *(string) --* 
        
          

          - **edgeLabels** *(list) --* 

            A list of the distinct edge labels in the graph.

            
            

            - *(string) --* 
        
          

          - **numNodeProperties** *(integer) --* 

            A list of the distinct node properties in the graph, along with the count of nodes where each property is used.

            
          

          - **numEdgeProperties** *(integer) --* 

            The number of distinct edge properties in the graph.

            
          

          - **nodeProperties** *(list) --* 

            The number of distinct node properties in the graph.

            
            

            - *(dict) --* 
              

              - *(string) --* 
                

                - *(integer) --* 
          
        
        
          

          - **edgeProperties** *(list) --* 

            A list of the distinct edge properties in the graph, along with the count of edges where each property is used.

            
            

            - *(dict) --* 
              

              - *(string) --* 
                

                - *(integer) --* 
          
        
        
          

          - **totalNodePropertyValues** *(integer) --* 

            The total number of usages of all node properties.

            
          

          - **totalEdgePropertyValues** *(integer) --* 

            The total number of usages of all edge properties.

            
          

          - **nodeStructures** *(list) --* 

            This field is only present when the requested mode is ``DETAILED``. It contains a list of node structures.

            
            

            - *(dict) --* 

              A node structure.

              
              

              - **count** *(integer) --* 

                Number of nodes that have this specific structure.

                
              

              - **nodeProperties** *(list) --* 

                A list of the node properties present in this specific structure.

                
                

                - *(string) --* 
            
              

              - **distinctOutgoingEdgeLabels** *(list) --* 

                A list of distinct outgoing edge labels present in this specific structure.

                
                

                - *(string) --* 
            
          
        
          

          - **edgeStructures** *(list) --* 

            This field is only present when the requested mode is ``DETAILED``. It contains a list of edge structures.

            
            

            - *(dict) --* 

              An edge structure.

              
              

              - **count** *(integer) --* 

                The number of edges that have this specific structure.

                
              

              - **edgeProperties** *(list) --* 

                A list of edge properties present in this specific structure.

                
                

                - *(string) --* 
            
          
        
      
    
  
  **Exceptions**
  
  *   :py:class:`NeptuneData.Client.exceptions.BadRequestException`

  
  *   :py:class:`NeptuneData.Client.exceptions.InvalidParameterException`

  
  *   :py:class:`NeptuneData.Client.exceptions.StatisticsNotAvailableException`

  
  *   :py:class:`NeptuneData.Client.exceptions.ClientTimeoutException`

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

  
  *   :py:class:`NeptuneData.Client.exceptions.IllegalArgumentException`

  
  *   :py:class:`NeptuneData.Client.exceptions.TooManyRequestsException`

  
  *   :py:class:`NeptuneData.Client.exceptions.UnsupportedOperationException`

  
  *   :py:class:`NeptuneData.Client.exceptions.PreconditionsFailedException`

  
  *   :py:class:`NeptuneData.Client.exceptions.ReadOnlyViolationException`

  
  *   :py:class:`NeptuneData.Client.exceptions.ConstraintViolationException`

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

  
  *   :py:class:`NeptuneData.Client.exceptions.MissingParameterException`

  