Skip to main content

Data Models

All API responses are parsed into typed Pydantic models. Every model uses extra="allow" so that new fields from the API are preserved without breaking existing code.

Product Models

Product

Full product representation returned by detail endpoints.

FieldTypeDescription
idUUIDProduct UUID
namestrDisplay name
slugstrURL-friendly identifier
description_markdownstr | NoneMarkdown description
product_typestr | NoneType (table, view, dashboard, etc.)
tagslist[str]Tags
is_archivedboolWhether the product is archived
space_idUUID | NoneOwning space UUID
quality_healthdict | NoneQuality health summary
created_at / updated_atdatetime | NoneTimestamps

ProductSummary

Lightweight product used in list responses (subset of Product fields).


Refresh Models

ProductRefreshResponse

A recorded refresh event.

FieldTypeDescription
idUUIDRefresh UUID
product_idUUIDProduct UUID
statusRefreshStatusStatus enum (success, failure, running)
trigger_sourceTriggerSourceSource enum (manual, airflow, dbt, etc.)
started_at / completed_atdatetime | NoneTimestamps
row_countint | NoneRows processed
metadatadict | NoneExtra metadata

ProductRefreshSummary

Lightweight refresh used in list responses.

ProductRefreshStats

Aggregate statistics (total refreshes, success rate, average duration).

ProductRefreshCreate

Input model for creating a refresh event.

Enums: RefreshStatus, TriggerSource

String enums for type-safe status and trigger source values.


Quality Models

QualityCheck

Quality check definition.

FieldTypeDescription
idUUIDCheck UUID
namestrCheck name
slugstrURL-friendly slug
check_typestrType (sql, row_count, manual, etc.)
querystr | NoneSQL query
statusstrCurrent status
product_idslist[UUID]Linked product UUIDs

CheckExecution

A single execution result.

FieldTypeDescription
idUUIDExecution UUID
check_idUUIDParent check UUID
statusstrResult (passed, failed, warning, error)
valuefloat | NoneMeasured value
is_passedboolWhether the check passed
executed_atdatetime | NoneExecution timestamp

CheckStats

Aggregated check statistics (pass rate, execution count, trends).


Connector Models

Connector

FieldTypeDescription
idUUIDConnector UUID
namestrDisplay name
connector_typestrType (postgresql, bigquery, dbt, etc.)
configdict | NoneConnection configuration

SyncJob

A metadata sync job triggered by connectors.sync() or upload_dbt_manifest().


Space Models

Space

FieldTypeDescription
idUUIDSpace UUID
namestrSpace name
slugstrURL-friendly slug

SpaceMember

A user's membership in a space with their role.


Issue Models

Ticket

Full ticket representation.

FieldTypeDescription
idUUIDTicket UUID
titlestrTicket title
description_markdownstrMarkdown body
prioritystrPriority (low, medium, high, critical)
statusstrStatus (open, in_progress, resolved, closed)
reporter_id / assignee_idUUID | NoneUser UUIDs
space_id / space_slugUUID | None / str | NoneSpace context
impact_assessmentImpactAssessment | NoneImpact details
products_infolist[ProductLink]Linked products
commentslist[TicketComment]Comments
created_at / updated_atdatetime | NoneTimestamps

TicketComment

A comment on a ticket.

ImpactAssessment

Impact assessment details (business impact, technical impact, reach, effort).

Lightweight product reference (id, name).


Alert Models

UnifiedAlert

Aggregated alert from the central feed. Contains fields from DQ, Smart, and Product alert sources.

FieldTypeDescription
idstrAlert identifier
statusstropen or resolved
severitystrSeverity level
sourcestrAlert source type
product_name / product_slugstr | NoneProduct context
check_name / check_typestr | NoneDQ check context
annotationslist[dict] | NoneAnnotations

ProductAlert

Product banner alert.

FieldTypeDescription
idUUIDAlert UUID
product_idUUIDProduct UUID
severitystrinfo, warning, or critical
titlestrAlert title
messagestr | NoneDetailed message
is_activeboolWhether the alert is active
expires_atdatetime | NoneExpiration timestamp

AlertAnnotation

An annotation on any alert type.

FieldTypeDescription
idUUIDAnnotation UUID
user_idUUIDAuthor UUID
commentstrAnnotation text
created_atdatetime | NoneTimestamp

Search Models

SearchResult

A unified search result with a type discriminator. Type-specific fields are only populated for results of the corresponding entity kind.

FieldTypeDescription
idUUIDEntity UUID
namestrDisplay name
descriptionstr | NoneEntity description
typestrEntity kind (product, issue, meeting, source_system, connector, user, comment, contract)
product_typestr | NoneProduct type (products only)
providerstr | NoneProvider name (products only)
statusstr | NoneStatus (meetings only)
scheduled_atstr | NoneScheduled time (meetings only)
platform_typestr | NonePlatform type (source systems only)
prioritystr | NonePriority level (issues only)
emailstr | NoneEmail address (users only)
product_idUUID | NoneParent product UUID (comments only)
product_namestr | NoneParent product name (comments only)