pyatlan


Namepyatlan JSON
Version 7.1.4 PyPI version JSON
download
home_pageNone
SummaryAtlan Python Client
upload_time2025-07-30 05:36:46
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseApache LICENSE 2.0
keywords atlan client
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center">

<img src="https://github.com/user-attachments/assets/38243809-d723-4464-8f1c-4869795ea0c8" alt="pyatlan Logo" width="300">

**The official Python SDK for the Atlan ๐Ÿ’™**

[![PyPI version](https://img.shields.io/pypi/v/pyatlan.svg)](https://pypi.org/project/pyatlan/)
[![Python versions](https://img.shields.io/pypi/pyversions/pyatlan.svg)](https://pypi.org/project/pyatlan/)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![Downloads](https://img.shields.io/pypi/dm/pyatlan.svg)](https://pypi.org/project/pyatlan/)
[![Build Status](https://github.com/atlanhq/atlan-python/actions/workflows/pyatlan-publish.yaml/badge.svg)](https://github.com/atlanhq/atlan-python/actions/workflows/pyatlan-publish.yaml)
[![Documentation](https://img.shields.io/badge/docs-developer.atlan.com-blue.svg)](https://developer.atlan.com/getting-started/python-sdk/)
[![Docker](https://img.shields.io/badge/docker-ghcr.io%2Fatlanhq%2Fatlan--python-blue.svg)](https://github.com/atlanhq/atlan-python/pkgs/container/atlan-python)

---

[**๐Ÿ“– Documentation**](https://developer.atlan.com/getting-started/python-sdk/) โ€ข
[**๐Ÿณ Docker**](#-docker) โ€ข
[**๐Ÿค Contributing**](#-contributing)

</div>

![-----------------------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/aqua.png)

## ๐Ÿ“Š Project Stats

- ๐Ÿ **Python Versions**: 3.8, 3.9, 3.10, 3.11, 3.12, 3.13
- ๐Ÿ“ฆ **Package Size**: Optimized for fast installation
- ๐Ÿš€ **Performance**: Built with modern async/await support
- ๐Ÿ”ง **Dependencies**: Minimal, modern stack
- ๐Ÿ“ˆ **Stability**: Production-ready

## ๐Ÿ“ฆ Installation

### Production Use

```bash
# Latest stable version
pip install pyatlan

# Specific version
pip install pyatlan==7.1.3

# With uv (faster) - install uv first: curl -LsSf https://astral.sh/uv/install.sh | sh
uv add pyatlan
```

### Development Setup

```bash
# Clone the repository
git clone https://github.com/atlanhq/atlan-python.git
cd atlan-python

# Install uv (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Install with development dependencies
uv sync --extra dev

# Run quality checks
uv run ./qa-checks

# Run tests
uv run pytest tests/unit
```

## ๐Ÿณ Docker

### Pre-built Images


```bash
# Latest version
docker pull ghcr.io/atlanhq/atlan-python:latest

# Specific version
docker pull ghcr.io/atlanhq/atlan-python:7.1.3
```

### Usage

```bash
# Interactive Python session
docker run -it --rm ghcr.io/atlanhq/atlan-python:latest

# Run a script
docker run -it --rm \
  -v $(pwd):/app \
  -e ATLAN_API_KEY=your_key \
  -e ATLAN_BASE_URL=https://your-tenant.atlan.com \
  ghcr.io/atlanhq/atlan-python:latest \
  python your_script.py
```

## ๐Ÿงช Testing

### Unit Tests
```bash
# Run all unit tests
uv run pytest tests/unit

# Run with coverage
uv run pytest tests/unit --cov=pyatlan --cov-report=html
```

### Integration Tests
```bash
# Set up environment
cp .env.example .env
# Edit .env with your Atlan credentials

# Run integration tests
uv run pytest tests/integration
```

### Quality Assurance
```bash
# Run all QA checks (formatting, linting, type checking)
uv run ./qa-checks

# Individual checks
uv run ruff format .          # Code formatting
uv run ruff check .           # Linting
uv run mypy .                 # Type checking
```

## ๐Ÿค Contributing

We welcome contributions! Here's how to get started:

### Development Setup

```bash
# Fork and clone the repository
git clone https://github.com/your-username/atlan-python.git
cd atlan-python

# Install uv (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Install development dependencies
uv sync --extra dev

# Install pre-commit hooks
uv run pre-commit install
```

### Making Changes

```bash
# Create a feature branch
git checkout -b feature/amazing-feature

# Make your changes and test
uv run ./formatter
uv run ./qa-checks
uv run pytest tests/unit

# Commit with conventional commits
git commit -m "feat: add amazing feature"

# Push and create a pull request
git push origin feature/amazing-feature
```

### Guidelines

- โœ… Follow [conventional commits](https://www.conventionalcommits.org/)
- โœ… Add tests for new features
- โœ… Update documentation as needed
- โœ… Ensure all QA checks pass

## ๐Ÿ› ๏ธ SDK Generator

Generate asset models from your Atlan instance:

```bash
# Generate models automatically
uv run ./generator

# Use custom typedefs file
uv run ./generator ./my-typedefs.json
```

This will:
- ๐Ÿ“ฅ Retrieve typedefs from your Atlan instance
- ๐Ÿ—๏ธ Generate asset models, enums, and structures
- ๐ŸŽจ Format code automatically
- โšก Support incremental updates

## ๐Ÿ“„ License

This project is licensed under the **Apache License 2.0** - see the [LICENSE](LICENSE) file for details.

## ๐Ÿ™ Attribution

Portions of this SDK are based on original work from:
- **[Apache Atlas](https://github.com/apache/atlas)** (Apache-2.0 license)
- **[Elasticsearch DSL](https://github.com/elastic/elasticsearch-dsl-py)** (Apache-2.0 license)

<div align="center">

**Built with ๐Ÿ’™ by [Atlan](https://atlan.com)**

[Website](https://atlan.com) โ€ข [Documentation](https://developer.atlan.com) โ€ข [Support](mailto:support@atlan.com)

</div>

![-----------------------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/aqua.png)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pyatlan",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "Atlan Technologies Pvt Ltd <engineering@atlan.com>",
    "keywords": "atlan, client",
    "author": null,
    "author_email": "Atlan Technologies Pvt Ltd <engineering@atlan.com>",
    "download_url": "https://files.pythonhosted.org/packages/fb/43/da15901ac8386c25a8bad18b8554a554ccedb722361208d0dca87d35098e/pyatlan-7.1.4.tar.gz",
    "platform": null,
    "description": "<div align=\"center\">\n\n<img src=\"https://github.com/user-attachments/assets/38243809-d723-4464-8f1c-4869795ea0c8\" alt=\"pyatlan Logo\" width=\"300\">\n\n**The official Python SDK for the Atlan \ud83d\udc99**\n\n[![PyPI version](https://img.shields.io/pypi/v/pyatlan.svg)](https://pypi.org/project/pyatlan/)\n[![Python versions](https://img.shields.io/pypi/pyversions/pyatlan.svg)](https://pypi.org/project/pyatlan/)\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n[![Downloads](https://img.shields.io/pypi/dm/pyatlan.svg)](https://pypi.org/project/pyatlan/)\n[![Build Status](https://github.com/atlanhq/atlan-python/actions/workflows/pyatlan-publish.yaml/badge.svg)](https://github.com/atlanhq/atlan-python/actions/workflows/pyatlan-publish.yaml)\n[![Documentation](https://img.shields.io/badge/docs-developer.atlan.com-blue.svg)](https://developer.atlan.com/getting-started/python-sdk/)\n[![Docker](https://img.shields.io/badge/docker-ghcr.io%2Fatlanhq%2Fatlan--python-blue.svg)](https://github.com/atlanhq/atlan-python/pkgs/container/atlan-python)\n\n---\n\n[**\ud83d\udcd6 Documentation**](https://developer.atlan.com/getting-started/python-sdk/) \u2022\n[**\ud83d\udc33 Docker**](#-docker) \u2022\n[**\ud83e\udd1d Contributing**](#-contributing)\n\n</div>\n\n![-----------------------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/aqua.png)\n\n## \ud83d\udcca Project Stats\n\n- \ud83d\udc0d **Python Versions**: 3.8, 3.9, 3.10, 3.11, 3.12, 3.13\n- \ud83d\udce6 **Package Size**: Optimized for fast installation\n- \ud83d\ude80 **Performance**: Built with modern async/await support\n- \ud83d\udd27 **Dependencies**: Minimal, modern stack\n- \ud83d\udcc8 **Stability**: Production-ready\n\n## \ud83d\udce6 Installation\n\n### Production Use\n\n```bash\n# Latest stable version\npip install pyatlan\n\n# Specific version\npip install pyatlan==7.1.3\n\n# With uv (faster) - install uv first: curl -LsSf https://astral.sh/uv/install.sh | sh\nuv add pyatlan\n```\n\n### Development Setup\n\n```bash\n# Clone the repository\ngit clone https://github.com/atlanhq/atlan-python.git\ncd atlan-python\n\n# Install uv (if not already installed)\ncurl -LsSf https://astral.sh/uv/install.sh | sh\n\n# Install with development dependencies\nuv sync --extra dev\n\n# Run quality checks\nuv run ./qa-checks\n\n# Run tests\nuv run pytest tests/unit\n```\n\n## \ud83d\udc33 Docker\n\n### Pre-built Images\n\n\n```bash\n# Latest version\ndocker pull ghcr.io/atlanhq/atlan-python:latest\n\n# Specific version\ndocker pull ghcr.io/atlanhq/atlan-python:7.1.3\n```\n\n### Usage\n\n```bash\n# Interactive Python session\ndocker run -it --rm ghcr.io/atlanhq/atlan-python:latest\n\n# Run a script\ndocker run -it --rm \\\n  -v $(pwd):/app \\\n  -e ATLAN_API_KEY=your_key \\\n  -e ATLAN_BASE_URL=https://your-tenant.atlan.com \\\n  ghcr.io/atlanhq/atlan-python:latest \\\n  python your_script.py\n```\n\n## \ud83e\uddea Testing\n\n### Unit Tests\n```bash\n# Run all unit tests\nuv run pytest tests/unit\n\n# Run with coverage\nuv run pytest tests/unit --cov=pyatlan --cov-report=html\n```\n\n### Integration Tests\n```bash\n# Set up environment\ncp .env.example .env\n# Edit .env with your Atlan credentials\n\n# Run integration tests\nuv run pytest tests/integration\n```\n\n### Quality Assurance\n```bash\n# Run all QA checks (formatting, linting, type checking)\nuv run ./qa-checks\n\n# Individual checks\nuv run ruff format .          # Code formatting\nuv run ruff check .           # Linting\nuv run mypy .                 # Type checking\n```\n\n## \ud83e\udd1d Contributing\n\nWe welcome contributions! Here's how to get started:\n\n### Development Setup\n\n```bash\n# Fork and clone the repository\ngit clone https://github.com/your-username/atlan-python.git\ncd atlan-python\n\n# Install uv (if not already installed)\ncurl -LsSf https://astral.sh/uv/install.sh | sh\n\n# Install development dependencies\nuv sync --extra dev\n\n# Install pre-commit hooks\nuv run pre-commit install\n```\n\n### Making Changes\n\n```bash\n# Create a feature branch\ngit checkout -b feature/amazing-feature\n\n# Make your changes and test\nuv run ./formatter\nuv run ./qa-checks\nuv run pytest tests/unit\n\n# Commit with conventional commits\ngit commit -m \"feat: add amazing feature\"\n\n# Push and create a pull request\ngit push origin feature/amazing-feature\n```\n\n### Guidelines\n\n- \u2705 Follow [conventional commits](https://www.conventionalcommits.org/)\n- \u2705 Add tests for new features\n- \u2705 Update documentation as needed\n- \u2705 Ensure all QA checks pass\n\n## \ud83d\udee0\ufe0f SDK Generator\n\nGenerate asset models from your Atlan instance:\n\n```bash\n# Generate models automatically\nuv run ./generator\n\n# Use custom typedefs file\nuv run ./generator ./my-typedefs.json\n```\n\nThis will:\n- \ud83d\udce5 Retrieve typedefs from your Atlan instance\n- \ud83c\udfd7\ufe0f Generate asset models, enums, and structures\n- \ud83c\udfa8 Format code automatically\n- \u26a1 Support incremental updates\n\n## \ud83d\udcc4 License\n\nThis project is licensed under the **Apache License 2.0** - see the [LICENSE](LICENSE) file for details.\n\n## \ud83d\ude4f Attribution\n\nPortions of this SDK are based on original work from:\n- **[Apache Atlas](https://github.com/apache/atlas)** (Apache-2.0 license)\n- **[Elasticsearch DSL](https://github.com/elastic/elasticsearch-dsl-py)** (Apache-2.0 license)\n\n<div align=\"center\">\n\n**Built with \ud83d\udc99 by [Atlan](https://atlan.com)**\n\n[Website](https://atlan.com) \u2022 [Documentation](https://developer.atlan.com) \u2022 [Support](mailto:support@atlan.com)\n\n</div>\n\n![-----------------------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/aqua.png)\n",
    "bugtrack_url": null,
    "license": "Apache LICENSE 2.0",
    "summary": "Atlan Python Client",
    "version": "7.1.4",
    "project_urls": {
        "Documentation": "https://github.com/atlanhq/atlan-python",
        "Homepage": "https://github.com/atlanhq/atlan-python",
        "Issues": "https://github.com/atlanhq/atlan-python/issues",
        "Repository": "https://github.com/atlanhq/atlan-python"
    },
    "split_keywords": [
        "atlan",
        " client"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "53d0621ae00f8b8e4d540b8024874aa12856c76652a3860f130cd02bea0eefb6",
                "md5": "0f39ba42e321e9f3722c796053d32c6c",
                "sha256": "12829229348a25b22415d49d7bb72d15786d119399dc2670a574890e3d3ec4d3"
            },
            "downloads": -1,
            "filename": "pyatlan-7.1.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "0f39ba42e321e9f3722c796053d32c6c",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 1159179,
            "upload_time": "2025-07-30T05:36:44",
            "upload_time_iso_8601": "2025-07-30T05:36:44.678551Z",
            "url": "https://files.pythonhosted.org/packages/53/d0/621ae00f8b8e4d540b8024874aa12856c76652a3860f130cd02bea0eefb6/pyatlan-7.1.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "fb43da15901ac8386c25a8bad18b8554a554ccedb722361208d0dca87d35098e",
                "md5": "a0477fe0fda88f65792731398c71c968",
                "sha256": "92edece8a720197984fe94c60dab72a0143daa3b41f2c1b31b60d7d3babf579e"
            },
            "downloads": -1,
            "filename": "pyatlan-7.1.4.tar.gz",
            "has_sig": false,
            "md5_digest": "a0477fe0fda88f65792731398c71c968",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 637459,
            "upload_time": "2025-07-30T05:36:46",
            "upload_time_iso_8601": "2025-07-30T05:36:46.509159Z",
            "url": "https://files.pythonhosted.org/packages/fb/43/da15901ac8386c25a8bad18b8554a554ccedb722361208d0dca87d35098e/pyatlan-7.1.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-30 05:36:46",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "atlanhq",
    "github_project": "atlan-python",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pyatlan"
}
        
Elapsed time: 0.66056s