Custom Integration
Overview
The Customer Integration API empowers users to seamlessly extend Paradime's lineage and catalog capabilities with external applications. This powerful interface enables you to:
Create custom integrations tailored to your specific needs
Ingest and manage nodes from various data sources and applications
Upload node information for Paradime to incorporate into its lineage and catalog
Enhance data visibility by connecting Paradime with your entire data ecosystem
By leveraging this module, you can create a comprehensive, interconnected view of your data landscape, improving data governance, traceability, and insights across your organization.
Create a custom integration and upload nodes using JSON
This example uses as inputs the node_types.json
and the nodes.json
.
Defining color for a node:
The color
can be one defined from one of the provided color palettes:
VIOLET
#827be6
ORANGE
#fb982e
MANDY
#ef6292
TEAL
#33a9a9
GREEN
#27ae60
CORAL #FF8559
Defining icon for a node:
icon_name
can be chosen from Blueprint.js icons library
Example node_type.json
[
{
"node_type": "Datasource",
"icon_name": "database",
"color": "ORANGE"
},
{
"node_type": "Chart",
"icon_name": "pie-chart",
"color": "TEAL"
},
{
"node_type": "Dashboard",
"icon_name": "dashboard",
"color": "CORAL"
}
]
# First party modules
import json
from pathlib import Path
from typing import List
from paradime import Paradime
from paradime.apis.custom_integration.types import Node, NodeType
from paradime.tools.pydantic import parse_obj_as
# Create a Paradime client with your API credentials
paradime = Paradime(api_endpoint="API_ENDPOINT", api_key="API_KEY", api_secret="API_SECRET")
# Load node types and nodes from JSON files
node_types = parse_obj_as(List[NodeType], json.loads(Path("node_types.json").read_text()))
nodes = parse_obj_as(List[Node], json.loads(Path("nodes.json").read_text()))
# Create a custom integration or update it if it already exists
my_integration = paradime.custom_integration.upsert(
name="MyParadimeIntegration",
logo_url="https://example.com/logo.png", # Optional, replace with the logo URL of the integration, or remove this line.
node_types=node_types,
)
# Add nodes to the custom integration.
paradime.custom_integration.add_nodes(
integration_uid=my_integration.uid,
nodes=nodes,
)
Last updated
Was this helpful?