:doc:`AppSync <../../appsync>` / Paginator / ListFunctions

*************
ListFunctions
*************



.. py:class:: AppSync.Paginator.ListFunctions

  ::

    
    paginator = client.get_paginator('list_functions')

  
  

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

    Creates an iterator that will paginate through responses from :py:meth:`AppSync.Client.list_functions`.

    See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListFunctions>`_    


    **Request Syntax**
    ::

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

      The GraphQL API ID.

      

    
    :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**

      
      ::

        {
            'functions': [
                {
                    'functionId': 'string',
                    'functionArn': 'string',
                    'name': 'string',
                    'description': 'string',
                    'dataSourceName': 'string',
                    'requestMappingTemplate': 'string',
                    'responseMappingTemplate': 'string',
                    'functionVersion': 'string',
                    'syncConfig': {
                        'conflictHandler': 'OPTIMISTIC_CONCURRENCY'|'LAMBDA'|'AUTOMERGE'|'NONE',
                        'conflictDetection': 'VERSION'|'NONE',
                        'lambdaConflictHandlerConfig': {
                            'lambdaConflictHandlerArn': 'string'
                        }
                    },
                    'maxBatchSize': 123,
                    'runtime': {
                        'name': 'APPSYNC_JS',
                        'runtimeVersion': 'string'
                    },
                    'code': 'string'
                },
            ],
            'NextToken': 'string'
        }
        
      **Response Structure**

      

      - *(dict) --* 
        

        - **functions** *(list) --* 

          A list of ``Function`` objects.

          
          

          - *(dict) --* 

            A function is a reusable entity. You can use multiple functions to compose the resolver logic.

            
            

            - **functionId** *(string) --* 

              A unique ID representing the ``Function`` object.

              
            

            - **functionArn** *(string) --* 

              The Amazon Resource Name (ARN) of the ``Function`` object.

              
            

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

              The name of the ``Function`` object.

              
            

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

              The ``Function`` description.

              
            

            - **dataSourceName** *(string) --* 

              The name of the ``DataSource``.

              
            

            - **requestMappingTemplate** *(string) --* 

              The ``Function`` request mapping template. Functions support only the 2018-05-29 version of the request mapping template.

              
            

            - **responseMappingTemplate** *(string) --* 

              The ``Function`` response mapping template.

              
            

            - **functionVersion** *(string) --* 

              The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported.

              
            

            - **syncConfig** *(dict) --* 

              Describes a Sync configuration for a resolver.

               

              Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked.

              
              

              - **conflictHandler** *(string) --* 

                The Conflict Resolution strategy to perform in the event of a conflict.

                 

                
                * **OPTIMISTIC_CONCURRENCY**: Resolve conflicts by rejecting mutations when versions don't match the latest version at the server.
                 
                * **AUTOMERGE**: Resolve conflicts with the Automerge conflict resolution strategy.
                 
                * **LAMBDA**: Resolve conflicts with an Lambda function supplied in the ``LambdaConflictHandlerConfig``.
                

                
              

              - **conflictDetection** *(string) --* 

                The Conflict Detection strategy to use.

                 

                
                * **VERSION**: Detect conflicts based on object versions for this resolver.
                 
                * **NONE**: Do not detect conflicts when invoking this resolver.
                

                
              

              - **lambdaConflictHandlerConfig** *(dict) --* 

                The ``LambdaConflictHandlerConfig`` when configuring ``LAMBDA`` as the Conflict Handler.

                
                

                - **lambdaConflictHandlerArn** *(string) --* 

                  The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler.

                  
            
          
            

            - **maxBatchSize** *(integer) --* 

              The maximum batching size for a resolver.

              
            

            - **runtime** *(dict) --* 

              Describes a runtime used by an Amazon Web Services AppSync pipeline resolver or Amazon Web Services AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified.

              
              

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

                The ``name`` of the runtime to use. Currently, the only allowed value is ``APPSYNC_JS``.

                
              

              - **runtimeVersion** *(string) --* 

                The ``version`` of the runtime to use. Currently, the only allowed version is ``1.0.0``.

                
          
            

            - **code** *(string) --* 

              The ``function`` code that contains the request and response functions. When code is used, the ``runtime`` is required. The ``runtime`` value must be ``APPSYNC_JS``.

              
        
      
        

        - **NextToken** *(string) --* 

          A token to resume pagination.

          
    