Skip to main content

Data Domains API

Manage data domains — logical groupings of data products organized by business function.

Endpoints Overview

MethodEndpointDescription
GET/organizations/{org_id}/domainsList all domains
POST/organizations/{org_id}/domainsCreate domain
GET/organizations/{org_id}/domains/{id}Get domain
PATCH/organizations/{org_id}/domains/{id}Update domain
DELETE/organizations/{org_id}/domains/{id}Delete domain
GET/organizations/{org_id}/domains/{id}/productsList domain products
POST/organizations/{org_id}/domains/{id}/productsAssign products
DELETE/organizations/{org_id}/domains/{id}/products/{product_id}Remove product
GET/organizations/{org_id}/domains/{id}/scorecardGet governance scorecard

List Domains

GET /organizations/{org_id}/domains

Query Parameters

ParameterTypeDescription
parent_iduuidFilter by parent domain (for sub-domains)
include_childrenbooleanInclude sub-domains in results (default: false)

Response

{
"items": [
{
"id": "...",
"name": "Finance",
"description": "All finance-related data products",
"icon": "💰",
"owner": {"id": "...", "name": "CFO"},
"stewards": [{"id": "...", "name": "Finance Steward"}],
"parent_id": null,
"product_count": 42,
"created_at": "2025-06-01T00:00:00Z"
}
],
"total": 8
}

Create Domain

POST /organizations/{org_id}/domains

Request Body

{
"name": "Revenue Recognition",
"description": "Revenue recognition and billing data products",
"icon": "📊",
"owner_id": "user-uuid",
"steward_ids": ["user-uuid-1", "user-uuid-2"],
"parent_id": "finance-domain-uuid"
}

Required Fields

FieldTypeDescription
namestringDomain display name

Optional Fields

FieldTypeDescription
descriptionstringDomain description
iconstringEmoji icon
owner_iduuidDomain owner user ID
steward_idsarraySteward user IDs
parent_iduuidParent domain ID (for sub-domains)

Response

Returns the created domain with status 201 Created.


Update Domain

PATCH /organizations/{org_id}/domains/{id}

Include only fields to update.


Delete Domain

DELETE /organizations/{org_id}/domains/{id}
caution

Deleting a domain does not delete its products — they are unlinked from the domain.


List Domain Products

GET /organizations/{org_id}/domains/{id}/products

Returns all data products assigned to this domain, across all spaces.

Query Parameters

ParameterTypeDescription
pageintegerPage number
sizeintegerItems per page
space_slugstringFilter by space

Assign Products

POST /organizations/{org_id}/domains/{id}/products
{
"product_ids": ["product-uuid-1", "product-uuid-2"]
}

Governance Scorecard

GET /organizations/{org_id}/domains/{id}/scorecard

Response

{
"domain_id": "...",
"domain_name": "Finance",
"total_products": 42,
"documentation_coverage": 0.85,
"ownership_coverage": 0.95,
"quality_coverage": 0.72,
"contract_coverage": 0.60,
"overall_score": 0.78
}