Skip to main content

Alation Agent SDK

Project description

Alation AI Agent SDK

The Alation AI Agent SDK is a Python library that enables AI agents to access and leverage metadata from the Alation Data Catalog.

Overview

This SDK provides a simple, programmatic way for AI applications to:

  • Retrieve contextual information from the Alation catalog using natural language questions
  • Search for and retrieve data products by product ID or natural language queries
  • Customize response formats using signature specifications

Installation

pip install alation-ai-agent-sdk

Prerequisites

To use the SDK, you'll need:

  • Python 3.10 or higher
  • Access to an Alation Data Catalog instance
  • A valid refresh token or client_id and secret. For more details, refer to the Authentication Guide.
  • If you cannot obtain service account credentials (admin only), see the User Account Authentication Guide for instructions.

Quick Start

from alation_ai_agent_sdk import AlationAIAgentSDK, ServiceAccountAuthParams

# Initialize the SDK using service account authentication (recommended)

sdk = AlationAIAgentSDK(
    base_url="https://your-alation-instance.com",
    auth_method="service_account",
    auth_params=ServiceAccountAuthParams(
        client_id="your-client-id",
        client_secret="your-client-secret"
    )
)

# Ask a question about your data
response = sdk.get_context(
    "What tables contain sales information?"
)
print(response)

# Use a signature to customize the response format
signature = {
    "table": {
        "fields_required": ["name", "title", "description"]
    }
}

response = sdk.get_context(
    "What are the customer tables?",
    signature
)
print(response)

# Retrieve a data product by ID
data_product_by_id = sdk.get_data_products(product_id="finance:loan_performance_analytics")
print(data_product_by_id)

# Search for data products using a natural language query
data_products_by_query = sdk.get_data_products(query="customer analytics dashboards")
print(data_products_by_query)

Core Features

Response Customization with Signatures

You can customize the data returned by the Alation context tool using signatures:

# Only include specific fields for tables
table_signature = {
    "table": {
        "fields_required": ["name", "description", "url"]
    }
}

response = sdk.get_context(
    "What are our fact tables?",
    table_signature
)

For detailed documentation on signature format and capabilities, see Using Signatures .

Getting Available Tools

# Get all available tools
tools = sdk.get_tools()

Using the UpdateCatalogAssetMetadata Tool

The UpdateCatalogAssetMetadata tool allows you to update metadata for one or more Alation catalog assets using custom field values.

Example

from alation_ai_agent_sdk import AlationAIAgentSDK, ServiceAccountAuthParams

sdk = AlationAIAgentSDK(
    base_url="https://your-alation-instance.com",
    auth_method="service_account",
    auth_params=ServiceAccountAuthParams(
        client_id="your-client-id",
        client_secret="your-client-secret"
    )
)

custom_field_values = [
    {
        "oid": "123",
        "otype": "table",
        "field_id": 8,
        "value": "Updated value"
    },
    # ... more objects ...
]

result = sdk.update_catalog_asset_metadata(custom_field_values)
print(result)

Check Job Status Tool

The check_job_status tool allows you to check the status of a bulk metadata job in Alation by job ID.

Example Usage

from alation_ai_agent_sdk import AlationAIAgentSDK

sdk = AlationAIAgentSDK(
    base_url="https://your-alation-instance.com",
    auth_method="service_account",
    auth_params=("your-client-id", "your-client-secret")
)

job_status = sdk.check_job_status(123)
print(job_status)
  • Parameters:
    • job_id (int): The integer job identifier returned by a previous bulk operation.
  • Returns:
    • The job status and details as a JSON object.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

alation_ai_agent_sdk-0.8.0.tar.gz (55.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

alation_ai_agent_sdk-0.8.0-py3-none-any.whl (47.8 kB view details)

Uploaded Python 3

File details

Details for the file alation_ai_agent_sdk-0.8.0.tar.gz.

File metadata

  • Download URL: alation_ai_agent_sdk-0.8.0.tar.gz
  • Upload date:
  • Size: 55.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.0

File hashes

Hashes for alation_ai_agent_sdk-0.8.0.tar.gz
Algorithm Hash digest
SHA256 1f26a94df11314a979ed822d27e2e5089af5af7f73c6d0b78fe606efb2c93c16
MD5 5f500536da96a238b8e873ca3406004a
BLAKE2b-256 e5b138c13371eb616dde5571b5e4e3e0129677a2ed7926814ea626041315846b

See more details on using hashes here.

File details

Details for the file alation_ai_agent_sdk-0.8.0-py3-none-any.whl.

File metadata

File hashes

Hashes for alation_ai_agent_sdk-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9ddefcae97a7ccae390863e86283d382caff52e1474d5564e8b3daf5f74312b9
MD5 0dc37959a25e799e93480a6c9b105e53
BLAKE2b-256 d8ddf09e4df513c51a41112f88f930c5664103110352470807948eb8b9b33538

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page