:doc:`DataZone <../../datazone>` / Client / create_data_product_revision

****************************
create_data_product_revision
****************************



.. py:method:: DataZone.Client.create_data_product_revision(**kwargs)

  

  Creates a data product revision.

   

  Prerequisites:

   

  
  * The original data product must exist in the given domain.
   
  * User must have permissions on the data product.
   
  * The domain must be valid and accessible.
   
  * The new revision name must comply with naming constraints (if required).
  

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/CreateDataProductRevision>`_  


  **Request Syntax**
  ::

    response = client.create_data_product_revision(
        domainIdentifier='string',
        identifier='string',
        name='string',
        description='string',
        glossaryTerms=[
            'string',
        ],
        items=[
            {
                'itemType': 'ASSET',
                'identifier': 'string',
                'revision': 'string',
                'glossaryTerms': [
                    'string',
                ]
            },
        ],
        formsInput=[
            {
                'formName': 'string',
                'typeIdentifier': 'string',
                'typeRevision': 'string',
                'content': 'string'
            },
        ],
        clientToken='string'
    )
    
  :type domainIdentifier: string
  :param domainIdentifier: **[REQUIRED]** 

    The ID of the domain where the data product revision is created.

    

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

    The ID of the data product revision.

    

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

    The name of the data product revision.

    

  
  :type description: string
  :param description: 

    The description of the data product revision.

    

  
  :type glossaryTerms: list
  :param glossaryTerms: 

    The glossary terms of the data product revision.

    

  
    - *(string) --* 

    

  :type items: list
  :param items: 

    The data assets of the data product revision.

    

  
    - *(dict) --* 

      The data product.

      

    
      - **itemType** *(string) --* **[REQUIRED]** 

        The type of the data product.

        

      
      - **identifier** *(string) --* **[REQUIRED]** 

        The ID of the data product.

        

      
      - **revision** *(string) --* 

        The revision of the data product.

        

      
      - **glossaryTerms** *(list) --* 

        The glossary terms of the data product.

        

      
        - *(string) --* 

        
    
    

  :type formsInput: list
  :param formsInput: 

    The metadata forms of the data product revision.

    

  
    - *(dict) --* 

      The details of a metadata form.

      

    
      - **formName** *(string) --* **[REQUIRED]** 

        The name of the metadata form.

        

      
      - **typeIdentifier** *(string) --* 

        The ID of the metadata form type.

        

      
      - **typeRevision** *(string) --* 

        The revision of the metadata form type.

        

      
      - **content** *(string) --* 

        The content of the metadata form.

        

      
    

  :type clientToken: string
  :param clientToken: 

    A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.

    This field is autopopulated if not provided.

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

    
    ::

      {
          'domainId': 'string',
          'id': 'string',
          'revision': 'string',
          'owningProjectId': 'string',
          'name': 'string',
          'status': 'CREATED'|'CREATING'|'CREATE_FAILED',
          'description': 'string',
          'glossaryTerms': [
              'string',
          ],
          'items': [
              {
                  'itemType': 'ASSET',
                  'identifier': 'string',
                  'revision': 'string',
                  'glossaryTerms': [
                      'string',
                  ]
              },
          ],
          'formsOutput': [
              {
                  'formName': 'string',
                  'typeName': 'string',
                  'typeRevision': 'string',
                  'content': 'string'
              },
          ],
          'createdAt': datetime(2015, 1, 1),
          'createdBy': 'string',
          'firstRevisionCreatedAt': datetime(2015, 1, 1),
          'firstRevisionCreatedBy': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **domainId** *(string) --* 

        The ID of the domain where data product revision is created.

        
      

      - **id** *(string) --* 

        The ID of the data product revision.

        
      

      - **revision** *(string) --* 

        The revision of the data product revision.

        
      

      - **owningProjectId** *(string) --* 

        The ID of the owning project of the data product revision.

        
      

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

        The name of the data product revision.

        
      

      - **status** *(string) --* 

        The status of the data product revision.

        
      

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

        The description of the data product revision.

        
      

      - **glossaryTerms** *(list) --* 

        The glossary terms of the data product revision.

        
        

        - *(string) --* 
    
      

      - **items** *(list) --* 

        The data assets of the data product revision.

        
        

        - *(dict) --* 

          The data product.

          
          

          - **itemType** *(string) --* 

            The type of the data product.

            
          

          - **identifier** *(string) --* 

            The ID of the data product.

            
          

          - **revision** *(string) --* 

            The revision of the data product.

            
          

          - **glossaryTerms** *(list) --* 

            The glossary terms of the data product.

            
            

            - *(string) --* 
        
      
    
      

      - **formsOutput** *(list) --* 

        The metadata forms of the data product revision.

        
        

        - *(dict) --* 

          The details of a metadata form.

          
          

          - **formName** *(string) --* 

            The name of the metadata form.

            
          

          - **typeName** *(string) --* 

            The name of the metadata form type.

            
          

          - **typeRevision** *(string) --* 

            The revision of the metadata form type.

            
          

          - **content** *(string) --* 

            The content of the metadata form.

            
      
    
      

      - **createdAt** *(datetime) --* 

        The timestamp at which the data product revision is created.

        
      

      - **createdBy** *(string) --* 

        The user who created the data product revision.

        
      

      - **firstRevisionCreatedAt** *(datetime) --* 

        The timestamp at which the first revision of the data product is created.

        
      

      - **firstRevisionCreatedBy** *(string) --* 

        The user who created the first revision of the data product.

        
  
  **Exceptions**
  
  *   :py:class:`DataZone.Client.exceptions.InternalServerException`

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

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

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

  
  *   :py:class:`DataZone.Client.exceptions.ConflictException`

  
  *   :py:class:`DataZone.Client.exceptions.ValidationException`

  
  *   :py:class:`DataZone.Client.exceptions.UnauthorizedException`

  