:doc:`CodeArtifact <../../codeartifact>` / Client / get_package_version_asset

*************************
get_package_version_asset
*************************



.. py:method:: CodeArtifact.Client.get_package_version_asset(**kwargs)

  

  Returns an asset (or file) that is in a package. For example, for a Maven package version, use ``GetPackageVersionAsset`` to download a ``JAR`` file, a ``POM`` file, or any other assets in the package version.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/codeartifact-2018-09-22/GetPackageVersionAsset>`_  


  **Request Syntax**
  ::

    response = client.get_package_version_asset(
        domain='string',
        domainOwner='string',
        repository='string',
        format='npm'|'pypi'|'maven'|'nuget'|'generic'|'ruby'|'swift'|'cargo',
        namespace='string',
        package='string',
        packageVersion='string',
        asset='string',
        packageVersionRevision='string'
    )
    
  :type domain: string
  :param domain: **[REQUIRED]** 

    The name of the domain that contains the repository that contains the package version with the requested asset.

    

  
  :type domainOwner: string
  :param domainOwner: 

    The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.

    

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

    The repository that contains the package version with the requested asset.

    

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

    A format that specifies the type of the package version with the requested asset file.

    

  
  :type namespace: string
  :param namespace: 

    The namespace of the package version with the requested asset file. The package component that specifies its namespace depends on its type. For example:

     

    .. note::

      

      The namespace is required when requesting assets from package versions of the following formats:

       

      
      * Maven
       
      * Swift
       
      * generic
      

      

     

    
    * The namespace of a Maven package version is its ``groupId``.
     
    * The namespace of an npm or Swift package version is its ``scope``.
     
    * The namespace of a generic package is its ``namespace``.
     
    * Python, NuGet, Ruby, and Cargo package versions do not contain a corresponding component, package versions of those formats do not have a namespace.
    

    

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

    The name of the package that contains the requested asset.

    

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

    A string that contains the package version (for example, ``3.5.2``).

    

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

    The name of the requested asset.

    

  
  :type packageVersionRevision: string
  :param packageVersionRevision: 

    The name of the package version revision that contains the requested asset.

    

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

    
    ::

      {
          'asset': StreamingBody(),
          'assetName': 'string',
          'packageVersion': 'string',
          'packageVersionRevision': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **asset** (:class:`.StreamingBody`) -- 

        The binary file, or asset, that is downloaded.

        
      

      - **assetName** *(string) --* 

        The name of the asset that is downloaded.

        
      

      - **packageVersion** *(string) --* 

        A string that contains the package version (for example, ``3.5.2``).

        
      

      - **packageVersionRevision** *(string) --* 

        The name of the package version revision that contains the downloaded asset.

        
  
  **Exceptions**
  
  *   :py:class:`CodeArtifact.Client.exceptions.AccessDeniedException`

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

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

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

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

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

  