Master Data
The Qarion SDK provides methods for creating and managing version-controlled reference and master datasets.
Usage
Create a Dataset
from qarion import QarionClient
client = QarionClient(api_key="qk_...")
dataset = client.master_data.create_dataset(
space_slug="finance",
name="Country Codes",
description="ISO 3166-1 country codes",
category="reference",
)
print(f"Dataset ID: {dataset.id}")
Manage Schema
# Add columns
client.master_data.add_column(
space_slug="finance",
dataset_id=dataset.id,
name="code",
data_type="string",
is_primary_key=True,
)
client.master_data.add_column(
space_slug="finance",
dataset_id=dataset.id,
name="name",
data_type="string",
)
Add Rows
client.master_data.add_row(
space_slug="finance",
dataset_id=dataset.id,
values={"code": "US", "name": "United States"},
)
Bulk Import
client.master_data.import_rows(
space_slug="finance",
dataset_id=dataset.id,
data=[
{"code": "US", "name": "United States"},
{"code": "GB", "name": "United Kingdom"},
{"code": "DE", "name": "Germany"},
],
strategy="upsert",
)
Publish a Version
version = client.master_data.publish(
space_slug="finance",
dataset_id=dataset.id,
)
print(f"Published version: {version.version_number}")
Export Data
csv_data = client.master_data.export_rows(
space_slug="finance",
dataset_id=dataset.id,
format="csv",
)
Compare Versions
diff = client.master_data.compare_versions(
space_slug="finance",
dataset_id=dataset.id,
from_version=v1.id,
to_version=v2.id,
)
print(f"Added: {diff.added}, Modified: {diff.modified}, Deleted: {diff.deleted}")
Related
- Master Data API Reference — Full endpoint documentation
- Master Data User Guide — End-user documentation