### Install pyatlan with Dependency Groups Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Install specific dependency groups like 'dev' or 'docs' using uv sync. Multiple groups can be installed simultaneously. ```bash # Install both dev and docs dependencies uv sync --group dev --group docs # Install all dependencies uv sync --all-groups ``` -------------------------------- ### Install pyatlan using uv Source: https://github.com/atlanhq/atlan-python/blob/main/docs/index.md Install the pyatlan package using uv. ```bash uv add pyatlan ``` -------------------------------- ### Set Up Development Environment and Pre-commit Hooks Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Clone the repository, install uv, synchronize development dependencies, and install pre-commit hooks for contributing. ```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 --group dev # Install pre-commit hooks uv run pre-commit install ``` -------------------------------- ### Clone Repository and Install Development Dependencies Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Set up the development environment by cloning the repository, installing uv, and synchronizing development dependencies. ```bash 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 --group dev ``` -------------------------------- ### Install pyatlan from source using uv (dev) Source: https://github.com/atlanhq/atlan-python/blob/main/docs/index.md Clone the repository and install pyatlan with development dependencies using uv. ```bash git clone https://github.com/atlanhq/atlan-python.git cd atlan-python uv sync --group dev ``` -------------------------------- ### Run Integration Tests Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Set up the environment by copying the example .env file and then run integration tests. ```bash # Set up environment cp .env.example .env # Edit .env with your Atlan credentials # Run integration tests uv run pytest tests/integration ``` -------------------------------- ### Install pyatlan using pip Source: https://github.com/atlanhq/atlan-python/blob/main/docs/index.md Install the pyatlan package using pip. ```bash pip install pyatlan ``` -------------------------------- ### Install Specific pyatlan Version Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Install a particular version of the pyatlan package by specifying the version number. ```bash pip install pyatlan==7.1.3 ``` -------------------------------- ### Example Field Values for Level and Connection Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md Demonstrates the expected string formats for 'level' and 'connection' fields, which can now accept string types. ```json "level": "user", "connection": "default/bigquery/1234567890" ``` -------------------------------- ### Run QA checks for Atlan Python SDK Source: https://github.com/atlanhq/atlan-python/blob/main/docs/index.md After forking and cloning the repository, install development dependencies using uv and then run all quality assurance checks, including linting, type-checking, and formatting. ```bash # Fork & clone git clone https://github.com/atlanhq/atlan-python.git cd atlan-python # Install dev dependencies uv sync --group dev # Run tests uv run pytest tests/unit # Run all QA checks (lint, type-check, format) uv run ./qa-checks ``` -------------------------------- ### Run Interactive Python Session in Docker Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Start an interactive Python session within the Atlan Docker container. ```bash docker run -it --rm registry.atlan.com/public/pyatlan:main-latest ``` -------------------------------- ### Retrieve Asset by GUID with Specific Attributes Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md Retrieve an asset by its GUID, specifying which attributes and related attributes to include. This method defaults to ignoring relationships for efficiency. ```python glossary = client.asset.get_by_guid( guid="b4113341-251b-4adc-81fb-2420501c30e6", asset_type=AtlasGlossary, min_ext_info=False, ignore_relationships=True, attributes=[AtlasGlossary.USER_DESCRIPTION, AtlasGlossary.TERMS], related_attributes=[AtlasGlossaryTerm.USER_DESCRIPTION] ) ``` -------------------------------- ### Initialize Atlan Client and Search Assets Source: https://github.com/atlanhq/atlan-python/blob/main/docs/index.md Initialize the AtlanClient with your tenant URL and API key, then perform a fluent search for active Table assets, limiting the results to 10 per page. This snippet demonstrates how to connect to Atlan and query for specific data assets. ```python from pyatlan.client import AtlanClient from pyatlan.model.fluent_search import FluentSearch from pyatlan.model.assets import Table # Initialize the client client = AtlanClient( base_url="https://.atlan.com", api_key="", ) # Search for assets response = client.asset.search( FluentSearch() .where(FluentSearch.asset_type(Table)) .where(FluentSearch.active_assets()) .page_size(10) .to_request() ) for asset in response: print(asset.name, asset.qualified_name) ``` -------------------------------- ### Run Unit Tests with uv Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Execute all unit tests for the pyatlan package using uv. ```bash uv run pytest tests/unit ``` -------------------------------- ### After: Using Client-Bound Thread-Local Storage Cache Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md Demonstrates the current approach where caches are bound to specific `AtlanClient` instances using thread-local storage. This ensures that caches are managed per client and avoids cross-thread interference. Note that re-initializing a client may require a new API call if the cache was previously cleared or not yet established for that instance. ```python c1 = AtlanClient() tag_id = c1.atlan_tag_cache.get_id_for_name(atlan_tag_name) # <-- Uses default client (c1) and populates the caches (API call) # OR tag_id = AtlanClient.get_current_client().atlan_tag_cache.get_id_for_name(atlan_tag_name) # <-- Uses default client (c1) and populates the caches (API call) tag_id = AtlanTagCache.get_id_for_name(atlan_tag_name) # Returns the ID from the cache (no API call) c2 = AtlanClient() tag_id = c2.atlan_tag_cache.get_id_for_name(atlan_tag_name) # <-- Uses default client (c2) and populates the cache (API call) tag_id = c2.atlan_tag_cache.get_id_for_name(atlan_tag_name) # Returns the ID from the cache (no API call) c1 = AtlanClient() tag_id = c1.atlan_tag_cache.get_id_for_name(atlan_tag_name) # <-- c1 initialized again. Since no cache_key is used in the latest approach, the previously populated cache instance is gone, and we need to make an API call to populate the cache for c1. tag_id = c1.atlan_tag_cache.get_id_for_name(atlan_tag_name) # Returns the ID from the cache (no API call) ``` -------------------------------- ### AtlanClient Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md The main AtlanClient class serves as the entry point for interacting with the Atlan API. ```APIDOC ## AtlanClient ### Description The `AtlanClient` class is the primary interface for all client-side operations within the Atlan SDK. It aggregates various client modules for different Atlan functionalities. ### Usage ```python from pyatlan.client import AtlanClient # Initialize the client (replace with your actual credentials/config) client = AtlanClient( host="YOUR_HOST", token="YOUR_TOKEN" ) # Access different client modules through the main client instance asset_client = client.asset user_client = client.user ``` ``` -------------------------------- ### Make and Commit Changes for Contribution Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Create a feature branch, make changes, run tests and quality checks, and commit using conventional commits before pushing. ```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 ``` -------------------------------- ### Query Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Enables running queries against Atlan data sources. ```APIDOC ## Query Client ### Description The Query Client allows users to execute queries against data sources managed by Atlan. ### Usage ```python from pyatlan.client.query import QueryClient # Assuming 'client' is an initialized AtlanClient instance query_client: QueryClient = client.query # Example: Execute a SQL query # results = query_client.execute_sql("SELECT * FROM your_table") ``` ``` -------------------------------- ### Configure AtlanClient with Proxy Settings Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md Use this snippet to configure the AtlanClient with explicit proxy settings for enhanced security and network handling. This is useful when the SDK needs to connect through a proxy or verify SSL certificates. ```python from pyatlan.client.atlan import AtlanClient proxy_settings = { "verify": "mitmproxy-ca-cert.pem", # Path to certificate file "proxy": "http://127.0.0.1:8081", # Proxy URL to use } client = AtlanClient(**proxy_settings) ``` -------------------------------- ### Open Lineage Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Manages OpenLineage events and metadata. ```APIDOC ## Open Lineage Client ### Description The Open Lineage Client is used for sending and managing lineage information according to the OpenLineage standard. ### Usage ```python from pyatlan.client.open_lineage import OpenLineageClient # Assuming 'client' is an initialized AtlanClient instance open_lineage_client: OpenLineageClient = client.open_lineage # Example: Send lineage event # open_lineage_client.send_event(lineage_event_data) ``` ``` -------------------------------- ### Run Quality Checks with uv Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Execute all quality assurance checks, including formatting, linting, and type checking, using the uv run command. ```bash uv run ./qa-checks ``` -------------------------------- ### Generate Asset Models with SDK Generator Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Use the SDK generator to retrieve typedefs from your Atlan instance and generate asset models. Supports caching and custom typedefs. ```bash uv run ./generator ``` ```bash uv run ./generator --override ``` ```bash uv run ./generator ./my-typedefs.json ``` ```bash uv run ./generator --override ./my-typedefs.json ``` -------------------------------- ### Run Unit Tests with Coverage Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Execute unit tests and generate an HTML coverage report using pytest. ```bash uv run pytest tests/unit --cov=pyatlan --cov-report=html ``` -------------------------------- ### Regenerate pyatlan_v9 Models with Claude Code Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Recommended method for regenerating v9 models using Claude Code skill. Supports generating from specific branches and running tests. ```bash /generate-v9-models ``` ```bash /generate-v9-models ``` ```bash /generate-v9-models test ``` ```bash /generate-v9-models test ``` -------------------------------- ### Run Python Script in Docker with Environment Variables Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Execute a Python script inside the Atlan Docker container, mounting the current directory and setting necessary environment variables for Atlan connection. ```bash docker run -it --rm \ -v $(pwd):/app \ -e ATLAN_API_KEY=your_key \ -e ATLAN_BASE_URL=https://your-tenant.atlan.com \ registry.atlan.com/public/pyatlan:main-latest \ python your_script.py ``` -------------------------------- ### Before: Using Shared Default Client Cache Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md Illustrates the previous approach where `AtlanTagCache` used a shared default client, leading to potential cache inconsistencies in concurrent environments. Each call to `get_id_for_name` might interact with the default client and its associated cache. ```python from pyatlan.cache.atlan_tag_cache import AtlanTagCache c1 = AtlanClient() tag_id = AtlanTagCache.get_id_for_name(atlan_tag_name) # <-- Uses default client (c1), populates the caches (API call), and uses cache_key to store the cache instance tag_id = AtlanTagCache.get_id_for_name(atlan_tag_name) # Returns the ID from the cache (no API call) c2 = AtlanClient() tag_id = AtlanTagCache.get_id_for_name(atlan_tag_name) # <-- Uses default client (c2), populates the caches, and uses cache_key to store the cache instance tag_id = AtlanTagCache.get_id_for_name(atlan_tag_name) # Returns the ID from the cache (no API call) c1 = AtlanClient() tag_id = AtlanTagCache.get_id_for_name(atlan_tag_name) # <-- c1 initialized again. Since cache_key was used for c1 previously, the populated cache instance in memory is reused, avoiding an API call. tag_id = AtlanTagCache.get_id_for_name(atlan_tag_name) # Returns the ID from the cache (no API call) ``` -------------------------------- ### Access Custom Metadata Property Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md Demonstrates the updated syntax for accessing custom metadata properties, using bracket notation with the exact property name. ```python cm['First Name'] ``` -------------------------------- ### Configure Upload Blocklist for Sensitive Files Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md Users can extend the blocklist for sensitive files in `FileClient.upload_file()` using the `PYATLAN_UPLOAD_FILE_BLOCKED_PATHS` environment variable. This variable accepts a comma-separated list of substrings to match against the resolved file path. ```bash PYATLAN_UPLOAD_FILE_BLOCKED_PATHS="/custom/secrets/,.vault,.credentials" ``` -------------------------------- ### User Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Provides functionalities for managing users within Atlan. ```APIDOC ## User Client ### Description The User Client allows for the management of users, including creating, updating, deleting, and retrieving user information. ### Usage ```python from pyatlan.client.user import UserClient # Assuming 'client' is an initialized AtlanClient instance user_client: UserClient = client.user # Example: Get a user by their email # user = user_client.get_by_email("user@example.com") ``` ``` -------------------------------- ### Asyncio Test Configuration Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md Configure asyncio test loop scope in `pyproject.toml` for module-level fixtures, similar to sync integration tests. ```toml asyncio_mode = "auto" asyncio_default_test_loop_scope = "module" asyncio_default_fixture_loop_scope = "module" ``` -------------------------------- ### API Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/api.md Represents an API asset within Atlan. ```APIDOC ## API ::: pyatlan.model.assets.a_p_i.API ``` -------------------------------- ### Task Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Manages tasks and their execution status. ```APIDOC ## Task Client ### Description The Task Client provides functionalities for managing and monitoring tasks within the Atlan platform. ### Usage ```python from pyatlan.client.task import TaskClient # Assuming 'client' is an initialized AtlanClient instance task_client: TaskClient = client.task # Example: Get task details # task = task_client.get("your_task_id") ``` ``` -------------------------------- ### Async Find Purposes by Name Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md Use this async method to find purposes by name, leveraging shared business logic. It requires the `FindPurposesByName` class for request preparation and response processing. ```python from pyatlan.client.common import FindPurposesByName @validate_arguments async def find_purposes_by_name( self, name: str, attributes: Optional[List[str]] = None, ) -> List[Purpose]: """ Async find purposes by name using shared business logic. :param name: of the purpose :param attributes: (optional) collection of attributes to retrieve for the purpose :returns: all purposes with that name, if found :raises NotFoundError: if no purpose with the provided name exists """ search_request = FindPurposesByName.prepare_request(name, attributes) search_results = await self.search(search_request) return FindPurposesByName.process_response( search_results, name, allow_multiple=True, ) ``` -------------------------------- ### SSO Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Handles Single Sign-On (SSO) configurations and operations. ```APIDOC ## SSO Client ### Description The SSO Client module facilitates the management of Single Sign-On configurations for user authentication. ### Usage ```python from pyatlan.client.sso import SSOClient # Assuming 'client' is an initialized AtlanClient instance sso_client: SSOClient = client.sso # Example: Configure SSO settings # sso_client.configure_settings(settings_data) ``` ``` -------------------------------- ### AIModel Asset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/ai.md Represents an AI model within Atlan. ```APIDOC ## AIModel Asset ### Description Represents an AI model within Atlan. ### Class `pyatlan.model.assets.core.a_i_model.AIModel` ``` -------------------------------- ### Asset Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Provides functionalities for managing assets within Atlan. ```APIDOC ## Asset Client ### Description The Asset Client module allows users to interact with and manage assets in Atlan. This includes operations related to creating, retrieving, updating, and deleting assets. ### Usage ```python from pyatlan.client.asset import AssetClient # Assuming 'client' is an initialized AtlanClient instance asset_client: AssetClient = client.asset # Example: Get an asset by its qualified name # asset = asset_client.get_by_qualified_name("your_asset_qualified_name") ``` ``` -------------------------------- ### Run Snyk Security Scan Locally Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Perform a local Snyk security scan on project dependencies. This involves exporting requirements and then running the scan. ```bash uv export --all-extras --no-hashes > requirements.txt snyk test --file=requirements.txt --severity-threshold=high --skip-unresolved rm -f requirements.txt ``` -------------------------------- ### Run Individual Quality Assurance Checks Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Execute specific QA checks such as code formatting, linting, and type checking individually using uv run. ```bash # Code formatting uv run ruff format . # Linting uv run ruff check . # Type checking uv run mypy . ``` -------------------------------- ### Role Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Handles the management of user roles and permissions. ```APIDOC ## Role Client ### Description The Role Client provides functionalities for managing roles within Atlan, including assigning permissions and retrieving role details. ### Usage ```python from pyatlan.client.role import RoleClient # Assuming 'client' is an initialized AtlanClient instance role_client: RoleClient = client.role # Example: List all available roles # roles = role_client.list() ``` ``` -------------------------------- ### Admin Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Provides administrative functionalities for Atlan. ```APIDOC ## Admin Client ### Description The Admin Client offers a suite of tools for managing the Atlan environment, including system settings and configurations. ### Usage ```python from pyatlan.client.admin import AdminClient # Assuming 'client' is an initialized AtlanClient instance admin_client: AdminClient = client.admin # Example: Get system status # status = admin_client.get_status() ``` ``` -------------------------------- ### Pull Latest Atlan Docker Image Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Pull the latest Docker image for the Atlan Python SDK from the Harbor registry. ```bash docker pull registry.atlan.com/public/pyatlan:main-latest ``` -------------------------------- ### Token Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Manages API tokens for authentication and authorization. ```APIDOC ## Token Client ### Description The Token Client is used for managing API tokens, which are essential for authenticating requests to the Atlan API. ### Usage ```python from pyatlan.client.token import TokenClient # Assuming 'client' is an initialized AtlanClient instance token_client: TokenClient = client.token # Example: Generate a new token # new_token = token_client.generate("token_name") ``` ``` -------------------------------- ### CogniteFile Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/cognite.md Represents a file within Cognite. ```APIDOC ## CogniteFile ::: pyatlan.model.assets.cognite_file.CogniteFile ``` -------------------------------- ### Typedef Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Manages type definitions (typedefs) in Atlan. ```APIDOC ## Typedef Client ### Description The Typedef Client is used for managing type definitions, which define the structure and metadata of assets within Atlan. ### Usage ```python from pyatlan.client.typedef import TypedefClient # Assuming 'client' is an initialized AtlanClient instance typedef_client: TypedefClient = client.typedef # Example: Get a typedef by its name # typedef = typedef_client.get_by_name("your_typedef_name") ``` ``` -------------------------------- ### Namespace Class Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/core.md Represents a Namespace in Atlan. Used for logical grouping and access control of assets. ```APIDOC ## Namespace ::: pyatlan.model.assets.core.namespace.Namespace ``` -------------------------------- ### APIPath Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/api.md Represents an API path asset within Atlan. ```APIDOC ## APIPath ::: pyatlan.model.assets.a_p_i_path.APIPath ``` -------------------------------- ### Add HARD delete option to AssetClient.purge_by_guid() Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md The `AssetClient.purge_by_guid()` method now accepts an optional `delete_type: HARD` parameter for permanent deletion. ```python AssetClient.purge_by_guid(guid: str, delete_type: Literal['SOFT', 'HARD'] = 'SOFT') ``` -------------------------------- ### AIApplication Asset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/ai.md Represents an AI application within Atlan. ```APIDOC ## AIApplication Asset ### Description Represents an AI application within Atlan. ### Class `pyatlan.model.assets.core.a_i_application.AIApplication` ``` -------------------------------- ### SageMakerUnifiedStudio Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/sagemaker.md Represents a SageMaker Unified Studio asset. ```APIDOC ## SageMakerUnifiedStudio ::: pyatlan.model.assets.sage_maker_unified_studio.SageMakerUnifiedStudio ``` -------------------------------- ### Databricks Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/databricks.md Represents a Databricks asset in Atlan. ```APIDOC ## Databricks ::: pyatlan.model.assets.core.databricks.Databricks ``` -------------------------------- ### Automatic 401 Token Refresh with ContextVar Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md Fixes automatic 401 token refresh by using `ContextVar` for `AtlanClient._401_has_retried` to prevent race conditions in multithreading environments. ```python AtlanClient._401_has_retried = ContextVar('401_has_retried', default=False) ``` -------------------------------- ### Folder Class Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/core.md Represents a Folder in Atlan. Used for organizing assets within the data catalog. ```APIDOC ## Folder ::: pyatlan.model.assets.core.folder.Folder ``` -------------------------------- ### APIQuery Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/api.md Represents an API query asset within Atlan. ```APIDOC ## APIQuery ::: pyatlan.model.assets.a_p_i_query.APIQuery ``` -------------------------------- ### Impersonation Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Enables impersonation for administrative tasks. ```APIDOC ## Impersonation Client ### Description The Impersonation Client allows administrators to perform actions as another user for support or testing purposes. ### Usage ```python from pyatlan.client.impersonate import ImpersonationClient # Assuming 'client' is an initialized AtlanClient instance impersonation_client: ImpersonationClient = client.impersonate # Example: Start an impersonation session # impersonation_client.start("user_to_impersonate_id") ``` ``` -------------------------------- ### Abstract Asset Cache Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/cache.md Provides caching for abstract asset representations. ```APIDOC ## Abstract Asset Cache ### Description Caches abstract representations of assets, facilitating efficient operations on various asset types. ### Module `pyatlan.cache.abstract_asset_cache` ``` -------------------------------- ### SageMakerUnifiedStudioAsset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/sagemaker.md Represents a SageMaker Unified Studio Asset. ```APIDOC ## SageMakerUnifiedStudioAsset ::: pyatlan.model.assets.sage_maker_unified_studio_asset.SageMakerUnifiedStudioAsset ``` -------------------------------- ### LookerTile Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/looker.md Represents a Looker Tile asset. ```APIDOC ::: pyatlan.model.assets.looker_tile.LookerTile ``` -------------------------------- ### ObjectStore Asset Representation Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/cloud-storage.md Represents a generic Object Store asset in Atlan. ```APIDOC ## ObjectStore ::: pyatlan.model.assets.object_store.ObjectStore ``` -------------------------------- ### OAuth Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Manages OAuth 2.0 authentication flows. ```APIDOC ## OAuth Client ### Description The OAuth Client module handles OAuth 2.0 authentication, enabling secure access to resources. ### Usage ```python from pyatlan.client.oauth import OAuthClient # Assuming 'client' is an initialized AtlanClient instance oauth_client: OAuthClient = client.oauth # Example: Obtain an access token # token_info = oauth_client.get_token(code="authorization_code") ``` ``` -------------------------------- ### SageMakerUnifiedStudioAssetSchema Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/sagemaker.md Represents a SageMaker Unified Studio Asset Schema. ```APIDOC ## SageMakerUnifiedStudioAssetSchema ::: pyatlan.model.assets.sage_maker_unified_studio_asset_schema.SageMakerUnifiedStudioAssetSchema ``` -------------------------------- ### Configure AtlanClient for Token Refresh Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md Set the `_user_id` field on the `AtlanClient` to enable automatic token refresh and retry of API requests upon receiving a 401 Unauthorized response. Ensure `CLIENT_ID` and `CLIENT_SECRET` environment variables are configured. ```python client = AtlanClient() client._user_id = "962c8f78-98a7-908f-9ec2-9e5b7ee7a09f" ``` -------------------------------- ### SageMakerUnifiedStudioPublishedAsset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/sagemaker.md Represents a SageMaker Unified Studio Published Asset. ```APIDOC ## SageMakerUnifiedStudioPublishedAsset ::: pyatlan.model.assets.sage_maker_unified_studio_published_asset.SageMakerUnifiedStudioPublishedAsset ``` -------------------------------- ### File Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Handles file-related operations, such as uploads and downloads. ```APIDOC ## File Client ### Description The File Client module is responsible for managing files within Atlan, including uploading, downloading, and retrieving file metadata. ### Usage ```python from pyatlan.client.file import FileClient # Assuming 'client' is an initialized AtlanClient instance file_client: FileClient = client.file # Example: Upload a file # with open("path/to/your/file.txt", "rb") as f: # file_info = file_client.upload(file=f, file_name="file.txt") ``` ``` -------------------------------- ### BIProcess Class Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/core.md Represents a Business Intelligence Process in Atlan. Used for tracking data lineage related to BI tools. ```APIDOC ## BIProcess ::: pyatlan.model.assets.core.b_i_process.BIProcess ``` -------------------------------- ### OAuth Client (Client Credentials) Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Manages OAuth client credentials for service-to-service authentication. ```APIDOC ## OAuth Client (Client Credentials) ### Description This specific client handles OAuth client credentials flow for machine-to-machine authentication. ### Usage ```python from pyatlan.client.oauth_client import OAuthClient as OAuthClientCredentials # Assuming 'client' is an initialized AtlanClient instance oauth_client_creds: OAuthClientCredentials = client.oauth_client # Example: Request an access token using client credentials # token_info = oauth_client_creds.get_token() ``` ``` -------------------------------- ### Credential Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Manages credentials used for various integrations. ```APIDOC ## Credential Client ### Description The Credential Client is responsible for managing credentials that Atlan uses to connect to external systems and services. ### Usage ```python from pyatlan.client.credential import CredentialClient # Assuming 'client' is an initialized AtlanClient instance credential_client: CredentialClient = client.credential # Example: List available credentials # credentials = credential_client.list() ``` ``` -------------------------------- ### APIObject Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/api.md Represents an API object asset within Atlan. ```APIDOC ## APIObject ::: pyatlan.model.assets.a_p_i_object.APIObject ``` -------------------------------- ### Contract Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Handles data contract management within Atlan. ```APIDOC ## Contract Client ### Description The Contract Client provides functionalities for managing data contracts, ensuring data quality and consistency. ### Usage ```python from pyatlan.client.contract import ContractClient # Assuming 'client' is an initialized AtlanClient instance contract_client: ContractClient = client.contract # Example: Create a new data contract # contract = contract_client.create(contract_data) ``` ``` -------------------------------- ### SageMakerUnifiedStudioProject Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/sagemaker.md Represents a SageMaker Unified Studio Project asset. ```APIDOC ## SageMakerUnifiedStudioProject ::: pyatlan.model.assets.sage_maker_unified_studio_project.SageMakerUnifiedStudioProject ``` -------------------------------- ### DataQuality Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/data-quality.md Represents DataQuality assets. ```APIDOC ## DataQuality ::: pyatlan.model.assets.core.data_quality.DataQuality ``` -------------------------------- ### Metric Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/data-quality.md Represents Metric assets. ```APIDOC ## Metric ::: pyatlan.model.assets.core.metric.Metric ``` -------------------------------- ### Airflow Asset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/orchestration.md Represents an Airflow asset. ```APIDOC ## Airflow Asset ### Description Represents an Airflow asset. ### Model ::: pyatlan.model.assets.core.airflow.Airflow ``` -------------------------------- ### DataQualityRule Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/data-quality.md Represents DataQualityRule assets. ```APIDOC ## DataQualityRule ::: pyatlan.model.assets.core.data_quality_rule.DataQualityRule ``` -------------------------------- ### Group Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Manages user groups and their memberships. ```APIDOC ## Group Client ### Description The Group Client allows for the management of user groups, including creating, updating, deleting, and retrieving group information and memberships. ### Usage ```python from pyatlan.client.group import GroupClient # Assuming 'client' is an initialized AtlanClient instance group_client: GroupClient = client.group # Example: Get a group by its name # group = group_client.get_by_name("your_group_name") ``` ``` -------------------------------- ### DQ Template Config Cache Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/cache.md Handles caching for Data Quality template configurations. ```APIDOC ## DQ Template Config Cache ### Description Manages cached configurations for Data Quality templates, improving the performance of DQ-related operations. ### Module `pyatlan.cache.dq_template_config_cache` ``` -------------------------------- ### MCIncident Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/data-quality.md Represents MCIncident assets. ```APIDOC ## MCIncident ::: pyatlan.model.assets.core.m_c_incident.MCIncident ``` -------------------------------- ### S3Prefix Asset Representation Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/cloud-storage.md Represents an S3 Prefix (folder) asset in Atlan. ```APIDOC ## S3Prefix ::: pyatlan.model.assets.s3_prefix.S3Prefix ``` -------------------------------- ### ColumnProcess Class Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/core.md Represents a Column Process in Atlan. This class is relevant for tracking data transformations at the column level. ```APIDOC ## ColumnProcess ::: pyatlan.model.assets.core.column_process.ColumnProcess ``` -------------------------------- ### DataQualityRuleTemplate Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/data-quality.md Represents DataQualityRuleTemplate assets. ```APIDOC ## DataQualityRuleTemplate ::: pyatlan.model.assets.core.data_quality_rule_template.DataQualityRuleTemplate ``` -------------------------------- ### MatillionComponent Asset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/orchestration.md Represents a Matillion Component asset. ```APIDOC ## MatillionComponent Asset ### Description Represents a Matillion Component asset. ### Model ::: pyatlan.model.assets.core.matillion_component.MatillionComponent ``` -------------------------------- ### Salesforce Asset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/salesforce.md Represents a Salesforce asset in Atlan. ```APIDOC ## Salesforce ::: pyatlan.model.assets.salesforce.Salesforce ``` -------------------------------- ### Referenceable Class Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/core.md Represents a Referenceable entity in Atlan. This is a base class for objects that can be referenced. ```APIDOC ## Referenceable ::: pyatlan.model.assets.core.referenceable.Referenceable ``` -------------------------------- ### Retrieve Asset by Qualified Name with Specific Attributes Source: https://github.com/atlanhq/atlan-python/blob/main/HISTORY.md Retrieve an asset by its qualified name, specifying which attributes and related attributes to include. This method defaults to ignoring relationships for efficiency. ```python glossary = client.asset.get_by_qualified_name( asset_type=AtlasGlossary, qualified_name="pXkf3RUvsIOIG8xnn0W3O", min_ext_info=False, ignore_relationships=True, attributes=[AtlasGlossary.USER_DESCRIPTION, AtlasGlossary.TERMS], related_attributes=[AtlasGlossaryTerm.USER_DESCRIPTION] ) ``` -------------------------------- ### Process Class Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/core.md Represents a generic Process in Atlan. This is a base class for various types of data processing entities. ```APIDOC ## Process ::: pyatlan.model.assets.core.process.Process ``` -------------------------------- ### Connection Cache Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/cache.md Provides caching for connection details. ```APIDOC ## Connection Cache ### Description Caches connection details to optimize the process of establishing and managing connections. ### Module `pyatlan.cache.connection_cache` ``` -------------------------------- ### MatillionProject Asset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/orchestration.md Represents a Matillion Project asset. ```APIDOC ## MatillionProject Asset ### Description Represents a Matillion Project asset. ### Model ::: pyatlan.model.assets.core.matillion_project.MatillionProject ``` -------------------------------- ### Workflow Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Provides functionalities for managing and interacting with workflows. ```APIDOC ## Workflow Client ### Description The Workflow Client allows users to manage and execute workflows within the Atlan platform. ### Usage ```python from pyatlan.client.workflow import WorkflowClient # Assuming 'client' is an initialized AtlanClient instance workflow_client: WorkflowClient = client.workflow # Example: Trigger a workflow # result = workflow_client.trigger("your_workflow_id") ``` ``` -------------------------------- ### LookerProject Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/looker.md Represents a Looker Project asset. ```APIDOC ::: pyatlan.model.assets.looker_project.LookerProject ``` -------------------------------- ### S3Bucket Asset Representation Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/cloud-storage.md Represents an S3 Bucket asset in Atlan. ```APIDOC ## S3Bucket ::: pyatlan.model.assets.s3_bucket.S3Bucket ``` -------------------------------- ### DatabricksNotebook Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/databricks.md Represents a Databricks Notebook asset. ```APIDOC ## DatabricksNotebook ::: pyatlan.model.assets.databricks_notebook.DatabricksNotebook ``` -------------------------------- ### DatabricksAIModelContext Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/databricks.md Represents the AI Model Context for Databricks assets. ```APIDOC ## DatabricksAIModelContext ::: pyatlan.model.assets.core.databricks_a_i_model_context.DatabricksAIModelContext ``` -------------------------------- ### Pull Specific Atlan Docker Image Version Source: https://github.com/atlanhq/atlan-python/blob/main/README.md Pull a Docker image for a specific version of pyatlan and Python tag. ```bash docker pull registry.atlan.com/public/pyatlan:8.5.1-3.11 ``` -------------------------------- ### Search Log Client Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/client.md Provides access to search logs for auditing and analysis. ```APIDOC ## Search Log Client ### Description The Search Log Client allows retrieval and analysis of search queries performed within Atlan. ### Usage ```python from pyatlan.client.search_log import SearchLogClient # Assuming 'client' is an initialized AtlanClient instance search_log_client: SearchLogClient = client.search_log # Example: Get recent search logs # logs = search_log_client.get_logs() ``` ``` -------------------------------- ### DatabricksUnityCatalogTag Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/databricks.md Represents a Unity Catalog Tag for Databricks assets. ```APIDOC ## DatabricksUnityCatalogTag ::: pyatlan.model.assets.core.databricks_unity_catalog_tag.DatabricksUnityCatalogTag ``` -------------------------------- ### TableauDashboard Asset Model Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/tableau.md Represents a Tableau Dashboard asset. ```APIDOC ## TableauDashboard ::: pyatlan.model.assets.tableau_dashboard.TableauDashboard ``` -------------------------------- ### SodaCheck Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/data-quality.md Represents SodaCheck assets. ```APIDOC ## SodaCheck ::: pyatlan.model.assets.core.soda_check.SodaCheck ``` -------------------------------- ### SAP Asset Types Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/sap.md This section lists the available SAP asset types that can be represented and managed within the Atlan Python SDK. Each type corresponds to a specific SAP entity. ```APIDOC ## SAP ::: pyatlan.model.assets.s_a_p.SAP ## SapErpTable ::: pyatlan.model.assets.sap_erp_table.SapErpTable ## SapErpColumn ::: pyatlan.model.assets.sap_erp_column.SapErpColumn ## SapErpCdsView ::: pyatlan.model.assets.sap_erp_cds_view.SapErpCdsView ## SapErpAbapProgram ::: pyatlan.model.assets.sap_erp_abap_program.SapErpAbapProgram ## SapErpTransactionCode ::: pyatlan.model.assets.sap_erp_transaction_code.SapErpTransactionCode ## SapErpComponent ::: pyatlan.model.assets.sap_erp_component.SapErpComponent ## SapErpFunctionModule ::: pyatlan.model.assets.sap_erp_function_module.SapErpFunctionModule ## SapErpView ::: pyatlan.model.assets.sap_erp_view.SapErpView ``` -------------------------------- ### Spark Asset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/orchestration.md Represents a Spark asset. ```APIDOC ## Spark Asset ### Description Represents a Spark asset. ### Model ::: pyatlan.model.assets.core.spark.Spark ``` -------------------------------- ### SchemaRegistry Class Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/core.md Represents a Schema Registry in Atlan. Used for managing data schemas. ```APIDOC ## SchemaRegistry ::: pyatlan.model.assets.core.schema_registry.SchemaRegistry ``` -------------------------------- ### DatabricksMetricView Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/databricks.md Represents a Metric View for Databricks assets. ```APIDOC ## DatabricksMetricView ::: pyatlan.model.assets.core.databricks_metric_view.DatabricksMetricView ``` -------------------------------- ### DatabricksAIModelVersion Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/databricks.md Represents an AI Model Version for Databricks assets. ```APIDOC ## DatabricksAIModelVersion ::: pyatlan.model.assets.core.databricks_a_i_model_version.DatabricksAIModelVersion ``` -------------------------------- ### Catalog Class Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/core.md Represents a Catalog in Atlan. This class is used for organizing and managing data assets. ```APIDOC ## Catalog ::: pyatlan.model.assets.core.catalog.Catalog ``` -------------------------------- ### LookerFolder Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/looker.md Represents a Looker Folder asset. ```APIDOC ::: pyatlan.model.assets.looker_folder.LookerFolder ``` -------------------------------- ### Kafka Asset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/streaming.md Represents a Kafka asset within the Atlan data catalog. ```APIDOC ## Kafka ::: pyatlan.model.assets.kafka.Kafka ``` -------------------------------- ### Azure Asset Representation Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/cloud-storage.md Represents an Azure asset in Atlan. ```APIDOC ## Azure ::: pyatlan.model.assets.azure.Azure ``` -------------------------------- ### CogniteAsset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/cognite.md Represents an asset within Cognite. ```APIDOC ## CogniteAsset ::: pyatlan.model.assets.cognite_asset.CogniteAsset ``` -------------------------------- ### DatabricksVolume Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/databricks.md Represents a Volume asset in Databricks. ```APIDOC ## DatabricksVolume ::: pyatlan.model.assets.core.databricks_volume.DatabricksVolume ``` -------------------------------- ### TableauSite Asset Model Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/tableau.md Represents a Tableau Site asset. ```APIDOC ## TableauSite ::: pyatlan.model.assets.tableau_site.TableauSite ``` -------------------------------- ### Matillion Asset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/orchestration.md Represents a Matillion asset. ```APIDOC ## Matillion Asset ### Description Represents a Matillion asset. ### Model ::: pyatlan.model.assets.core.matillion.Matillion ``` -------------------------------- ### Source Tag Cache Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/cache.md Handles caching for source-specific tags. ```APIDOC ## Source Tag Cache ### Description Manages cached tags associated with data sources, enabling faster access to source-specific metadata. ### Module `pyatlan.cache.source_tag_cache` ``` -------------------------------- ### AIModelVersion Asset Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/ai.md Represents a specific version of an AI model within Atlan. ```APIDOC ## AIModelVersion Asset ### Description Represents a specific version of an AI model within Atlan. ### Class `pyatlan.model.assets.core.a_i_model_version.AIModelVersion` ``` -------------------------------- ### Resource Class Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/core.md Represents a Resource in Atlan. This class is used for various types of data resources. ```APIDOC ## Resource ::: pyatlan.model.assets.core.resource.Resource ``` -------------------------------- ### Tag Class Source: https://github.com/atlanhq/atlan-python/blob/main/docs/api/assets/core.md Represents a Tag in Atlan. Used for categorizing and classifying assets. ```APIDOC ## Tag ::: pyatlan.model.assets.core.tag.Tag ```