Native Python access to Azure DevOps Universal Packages: publish and download files, discover packages, read metadata, and inspect or compare package contents. No Azure CLI or ArtifactTool runtime dependency.
uv add az-artifactsFor development from a checkout, see source installation.
Provide a PAT with Packaging: Read and access to the feed through your environment or secret store, not source code or command-line arguments.
import os
from az_artifacts import UniversalPackageClient
with UniversalPackageClient(
"https://dev.azure.com/org",
credential=os.environ["AZURE_DEVOPS_EXT_PAT"],
) as client:
result = client.download(
feed="feed",
name="package",
version="1.2.3",
path="./download",
scope="project",
project="project",
)
print(result.files)- Publish packages
- Download options and authentication
- Discover feeds, packages, and versions
- Read metadata
- Compare local files
- Inspect files and path history
- Register already-uploaded content
- Development and releases
MIT. See provenance for upstream attribution. This is not an official Azure DevOps SDK.