skillfed

pyapacheatlas

A package to simplify working with the Apache Atlas REST APIs for Atlas and Azure Purview.

pyapacheatlas v0.16.0 573.9K downloads/30d#5,942 on PyPI176
Permissive license DORMANT released

What it is and what it does

PyApacheAtlas is a Python SDK that bridges programmatic and low-code workflows for managing metadata in Azure Purview and Apache Atlas. It wraps the REST APIs of both systems to let you create, update, and query entities (data assets), define custom types and classifications, establish lineage relationships, and manage glossary terms—all from Python code or from Excel templates that the package can parse and upload.

The package is designed for two user profiles: developers who want to automate metadata operations through Python, and business users or data stewards who prefer working with Excel spreadsheets. It handles authentication to both Azure Purview (via service principals) and Apache Atlas (via basic auth), and includes validation helpers to check entity correctness before upload. The core dependencies are minimal (openpyxl for Excel parsing, requests for HTTP calls), making it lightweight to integrate into existing data pipelines.

Use it for:

  • Bulk-load data asset metadata and lineage definitions into Azure Purview or Apache Atlas from Python scripts or scheduled jobs.
  • Parse and upload metadata from Excel templates to avoid manual API calls for repetitive metadata registration tasks.
  • Programmatically define custom entity types, classifications, and relationships to extend the metadata model beyond built-in types.
  • Automate data lineage tracking by creating Process entities and relationships between source and target assets.
  • Validate metadata before upload using the package's "What-If" analysis to catch missing or invalid attributes early.
  • Query and extract existing entities by GUID or qualified name for downstream processing or reporting.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

PyApacheAtlas provides a Python SDK and Excel integration for programmatic and low-code interaction with Azure Purview and Apache Atlas APIs, supporting entity management, lineage definition, type definitions, and classifications.

Yes, if you are actively working with Azure Purview or Apache Atlas and need to automate metadata operations at scale. The low install friction and permissive license make it a practical choice. However, be aware that maintenance is dormant—no updates since late 2023—so evaluate whether the current API compatibility matches your target system versions and whether you can support the package yourself if needed.

Install

pyapacheatlas on PyPI

pip

pip install pyapacheatlas

uv

uv add pyapacheatlas

poetry

poetry add pyapacheatlas

Installing pyapacheatlas

Before you install

Low install friction with only two runtime dependencies (openpyxl and requests). Maintenance is dormant—last commit was 2024-10-24 and no release since 2023-12-23—so expect no active bug fixes or feature development, though the repository is not archived.

License in practice

Licensed under MIT (permissive), so you can use, modify, and distribute the package freely with minimal restrictions.

Quickstart

pip install pyapacheatlas

from pyapacheatlas.core import AtlasEntity
from pyapacheatlas.auth import ServicePrincipalAuthentication

# Create an entity and authenticate to Azure Purview
entity = AtlasEntity(name="my_asset", typeName="DataSet")

Requires Python 3.6 or later. For Azure Purview authentication, you need azure-identity and appropriate service principal credentials configured.

Verify before relying

  • Whether the package works with current versions of Azure Purview and Apache Atlas APIs, given the dormant maintenance status.
  • Whether Excel template functionality is fully documented and actively supported.
  • Performance characteristics for bulk operations on large metadata sets.

Package facts

License not declared (permissive)
Python support supports the current Python release (>=3.6)
Install friction low — pure-Python wheel
Runtime dependencies 2 — openpyxl, requests
Maintenance dormant — 965 days since the last release
Last repo commit
First released
Downloads 573,943/month — #5,942 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pyapacheatlas-0.16.0-py3-none-any.whl

License :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3

Tags

azure purview python sdkapache atlas api clientmetadata management bulk uploaddata lineage definitionentity classification automationpurview excel integrationatlas rest api wrapper
metadata-managementdata-lineageazure-purview

More Front-Ends packages

SQLAlchemy

SQLAlchemy is a Python SQL toolkit and Object…

permissive · top 100 on PyPI

psycopg2-binary

psycopg2-binary is a PostgreSQL database…

copyleft · top 1,000 on PyPI

alembic

Alembic generates and manages database schema…

permissive · top 1,000 on PyPI

weaviate-client

A Python client library for connecting to and…

permissive · top 1,000 on PyPI

databricks-sql-connector

A Python client library that connects to…

permissive · top 1,000 on PyPI

psycopg

Psycopg 3 is a PostgreSQL database adapter for…

copyleft · top 1,000 on PyPI

atlasclient

A Python client for Apache Atlas REST API v2…

permissive · top 5,000 on PyPI

PowerPlatform-Dataverse-Client

A Python client library for Microsoft Dataverse…

unclear · top 15,000 on PyPI

agent-framework-purview

Adds Microsoft Purview data governance and DLP…

permissive · top 15,000 on PyPI

azure-cosmosdb-table

Client library for reading, writing, and…

permissive · top 5,000 on PyPI

cloudfoundry-client

A Python client library for interacting with…

unclear · top 15,000 on PyPI

azure-mgmt-consumption

Provides programmatic access to Azure…

permissive · top 5,000 on PyPI

azure-mgmt-monitor

Provides programmatic access to Azure Monitor…

permissive · top 5,000 on PyPI

pulumi

Pulumi's Python SDK lets you define and deploy…

permissive · top 5,000 on PyPI

alpaca-py

Alpaca-py is the official Python SDK for…

permissive · top 5,000 on PyPI

azure-applicationinsights

Provides a Python client library for querying…

permissive · top 5,000 on PyPI