:doc:`Glue <../../glue>` / Client / get_schema_versions_diff

************************
get_schema_versions_diff
************************



.. py:method:: Glue.Client.get_schema_versions_diff(**kwargs)

  

  Fetches the schema version difference in the specified difference type between two stored schema versions in the Schema Registry.

   

  This API allows you to compare two schema versions between two schema definitions under the same schema.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetSchemaVersionsDiff>`_  


  **Request Syntax**
  ::

    response = client.get_schema_versions_diff(
        SchemaId={
            'SchemaArn': 'string',
            'SchemaName': 'string',
            'RegistryName': 'string'
        },
        FirstSchemaVersionNumber={
            'LatestVersion': True|False,
            'VersionNumber': 123
        },
        SecondSchemaVersionNumber={
            'LatestVersion': True|False,
            'VersionNumber': 123
        },
        SchemaDiffType='SYNTAX_DIFF'
    )
    
  :type SchemaId: dict
  :param SchemaId: **[REQUIRED]** 

    This is a wrapper structure to contain schema identity fields. The structure contains:

     

    
    * SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema. One of ``SchemaArn`` or ``SchemaName`` has to be provided.
     
    * SchemaId$SchemaName: The name of the schema. One of ``SchemaArn`` or ``SchemaName`` has to be provided.
    

    

  
    - **SchemaArn** *(string) --* 

      The Amazon Resource Name (ARN) of the schema. One of ``SchemaArn`` or ``SchemaName`` has to be provided.

      

    
    - **SchemaName** *(string) --* 

      The name of the schema. One of ``SchemaArn`` or ``SchemaName`` has to be provided.

      

    
    - **RegistryName** *(string) --* 

      The name of the schema registry that contains the schema.

      

    
  
  :type FirstSchemaVersionNumber: dict
  :param FirstSchemaVersionNumber: **[REQUIRED]** 

    The first of the two schema versions to be compared.

    

  
    - **LatestVersion** *(boolean) --* 

      The latest version available for the schema.

      

    
    - **VersionNumber** *(integer) --* 

      The version number of the schema.

      

    
  
  :type SecondSchemaVersionNumber: dict
  :param SecondSchemaVersionNumber: **[REQUIRED]** 

    The second of the two schema versions to be compared.

    

  
    - **LatestVersion** *(boolean) --* 

      The latest version available for the schema.

      

    
    - **VersionNumber** *(integer) --* 

      The version number of the schema.

      

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

    Refers to ``SYNTAX_DIFF``, which is the currently supported diff type.

    

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

    
    ::

      {
          'Diff': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **Diff** *(string) --* 

        The difference between schemas as a string in JsonPatch format.

        
  
  **Exceptions**
  
  *   :py:class:`Glue.Client.exceptions.InvalidInputException`

  
  *   :py:class:`Glue.Client.exceptions.EntityNotFoundException`

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

  
  *   :py:class:`Glue.Client.exceptions.InternalServiceException`

  