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.12.0.tar.gz (74.3 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.12.0-py3-none-any.whl (61.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: alation_ai_agent_sdk-0.12.0.tar.gz
  • Upload date:
  • Size: 74.3 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.12.0.tar.gz
Algorithm Hash digest
SHA256 08e19d721e25d61b1c791ae525207cd9f48791b13d7efebd06538b3d6e70a623
MD5 984277e0ca155050b7b1923ec67d4c7b
BLAKE2b-256 be0bda04965a65837214fb58eecc45e2d7050e405edf6208d1c9b458a6bf85ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for alation_ai_agent_sdk-0.12.0-py3-none-any.whl
Algorithm Hash digest
SHA256 51f247e0928b61575d344f645c632d3029caa11d648cde69703cc99dfbeb3eb2
MD5 f99532f5f68b361d9cf1ad8e0601453f
BLAKE2b-256 f74d6387cf42cc51edc9419c328e76df271f93666dd8273fd2b84c6d2df9eb7e

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