Skip to main content
The Datagraph is in beta. Endpoints, field names, and validation rules can change without a deprecation window.

Quick Start

Validate a Datagraph Schema definition and read back the join analysis of its relations:
Every endpoint below requires an OAuth 2.0 access token. See Authentication.

Endpoints

Full request and response schemas are in the API reference.

Definition Format

The schema body field is an array of tables. Column: VirtualColumn adds a required query expression to the Column fields, minus default. Relation:

Validation Response

POST /datagraph/schemas/validate performs structural validation first, then analyses relations only when the definition is structurally valid. A structurally invalid definition returns 200 with validation.success set to false and an empty relations array:
When validation.success is true, validation.data holds the normalised definition and relations holds one entry per relation column pair:
matchCount is the smaller of the two distinct counts, and matchPercentage is matchCount / max(fromDistinctCount, toDistinctCount) * 100. The UI treats anything below 50 as a weak join. A per-relation error is returned when a Datasource cannot be resolved, and the counts are then null.

Publishing

Publishing promotes the Draft version to Live, marks the previous Live version inactive, and creates a new Draft copy of the Live definition. Entity output columns are recomputed against the new Live definition, and the Datagraph caches are invalidated.

Error Handling

Datagraph Entities

Datagraph Entities — the parameterised SQL queries executed against the Live Datagraph Schema — are not exposed in the public API. Create, publish, and run them from the DataHub, then consume them in a Workflow with the Query an entity Data Node. Two constraints apply to Entity SQL: every referenced Datasource must have a Live version, and Datasources protected by row-level filters cannot be queried.