Skip to main content
The Atlan Application SDK is a Python library for building applications on the Atlan platform. It provides a comprehensive set of tools for workflow orchestration, data processing, and integration with Atlan services.

Core Components

Application Layer

Application

Core application orchestration and lifecycle management

Workflows

Temporal workflow definitions and execution

Activities

Workflow activity implementations and state management

Handlers

Request handlers for different data sources

Client Layer

Clients

Client interfaces for external services

Transformers

Data transformation utilities

Services

StateStore

Persistent state management

ObjectStore

Object storage operations

SecretStore

Secure credential management

EventStore

Event publishing and management

AtlanStorage

Atlan storage migration utilities

Utilities

Decorators

Function decorators for common patterns

Observability

Logging, metrics, and tracing

Test Utils

Testing utilities and fixtures

Installation

pip install atlan-application-sdk

Quick Start

from application_sdk.application import BaseApplication
from application_sdk.workflows import WorkflowInterface
from application_sdk.activities import ActivitiesInterface

# Define your workflow
class MyWorkflow(WorkflowInterface):
    @staticmethod
    def get_activities(activities):
        return [activities.my_activity]

# Define your activities
class MyActivities(ActivitiesInterface):
    async def my_activity(self, workflow_args):
        # Activity implementation
        pass

# Create and start application
app = BaseApplication(name="my-app")
await app.setup_workflow(
    workflow_and_activities_classes=[
        (MyWorkflow, MyActivities)
    ]
)
await app.start(workflow_class=MyWorkflow)

Architecture

The SDK is built on several key concepts:
  • Applications: Orchestrate workflows, workers, and servers
  • Workflows: Define business logic using Temporal
  • Activities: Implement individual workflow tasks
  • Handlers: Process requests and coordinate client operations
  • Clients: Connect to external services and data sources
  • Services: Provide storage, state, and event management

Key Features

  • Temporal Integration: Built-in workflow orchestration
  • State Management: Persistent workflow state
  • Object Storage: File and directory operations
  • Secret Management: Secure credential handling
  • Event Publishing: Application event system
  • Observability: Comprehensive logging and metrics
  • Testing: Utilities for testing workflows and activities

Build docs developers (and LLMs) love