Xurrent Data Model

Interactive documentation · onITnow

Two views of the same product. The GraphQL API is the complete data model — everything Xurrent holds, and the only route to most of it. The UDC reporting database is the subset replicated for warehousing and BI. Most questions start in one and end in the other.

The API

GraphQL Data Model Explorer

Every entity in its business domain — attributes, relationships, allowed values, what you can filter and sort on. Includes a path finder between entities and a query builder that estimates cost against Xurrent's limits.

AnswersWhich fields exist on a request? What values does status accept? How do I get from a person to their time entries?
136
entities
1,473
attributes
781
relationships
91
value lists
Open the explorer →
The reporting database

UDC Database ERD

The replicated schema as tables and columns, drawn by subject area, with a full data dictionary behind each table. This is what a BI tool connects to.

AnswersWhich table holds this? What joins to what? Is this field available in the warehouse at all?
75
tables
939
columns
224
relationships
Open the ERD →

Reading the two together

The API is much wider than the warehouse. 136 entities exist in GraphQL; 37 of them have a table of the same name in UDC. If an entity is marked GraphQL only in the explorer, no amount of SQL will reach it — it has to come through the API.

The mapping is by name. A UDC entity table matches the GraphQL type of the same name. A many-to-many collection in GraphQL becomes a link table in UDC. An entity's customFields JSON becomes a …CustomFields table.

Custom fields are not in either document. Their keys are defined per account by a UI extension, so they appear in neither the schema nor a generic table listing. They have to be read from the customer's own environment.