Data Models API
This document describes the Data Models endpoints in the DataService API v2.
Base URL
/api/v2/DataModels
Endpoints
1. Get Data Models Collection
Retrieves a filtered collection of data model definitions.
Endpoint: GET /api/v2/DataModels
Query Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
Offset | int | No | Number of records to skip |
Limit | int | No | Maximum number of records to return |
Response Statuses:
| Status Code | Description |
|---|---|
200 OK | Successfully retrieved collection |
Response Body:
{
"items": [
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"code": "Customer",
"name": {
"values": [{ "culture": "en-US", "value": "Customer" }]
},
"description": {
"values": [{ "culture": "en-US", "value": "Customer entity model" }]
},
"isAggregateRoot": true,
"properties": [
{
"code": "FirstName",
"name": {
"values": [{ "culture": "en-US", "value": "First Name" }]
},
"description": null,
"isPublishedForLookup": false,
"isCollection": false,
"isLocalized": false,
"isNullable": false,
"fieldType": 1,
"referencedEntityTypeIds": null,
"expression": null,
"fieldValidations": []
}
],
"createdOn": "2025-01-15T10:30:00Z",
"modifiedOn": "2025-01-20T14:45:00Z"
}
],
"totalCount": 1
}
Example Request:
GET /api/v2/DataModels?Offset=0&Limit=10
2. Get Data Model by ID
Retrieves a specific data model definition by its unique identifier.
Endpoint: GET /api/v2/DataModels/{id}
Path Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
id | Guid | Yes | The data model identifier |
Response Statuses:
| Status Code | Description |
|---|---|
200 OK | Successfully retrieved the data model |
404 Not Found | Data model with the specified ID does not exist |
Response Body:
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"code": "Customer",
"name": {
"values": [{ "culture": "en-US", "value": "Customer" }]
},
"description": {
"values": [{ "culture": "en-US", "value": "Customer entity model" }]
},
"isAggregateRoot": true,
"properties": [
{
"code": "FirstName",
"name": {
"values": [{ "culture": "en-US", "value": "First Name" }]
},
"description": null,
"isPublishedForLookup": false,
"isCollection": false,
"isLocalized": false,
"isNullable": false,
"fieldType": 1,
"referencedEntityTypeIds": null,
"expression": null,
"fieldValidations": [
{
"validation": "Required",
"allowEmptyStrings": false
},
{
"validation": "StringMaxLength",
"maxLength": 100
}
]
},
{
"code": "Email",
"name": {
"values": [{ "culture": "en-US", "value": "Email Address" }]
},
"description": {
"values": [{ "culture": "en-US", "value": "Customer's primary email" }]
},
"isPublishedForLookup": true,
"isCollection": false,
"isLocalized": false,
"isNullable": true,
"fieldType": 1,
"referencedEntityTypeIds": null,
"expression": null,
"fieldValidations": []
}
],
"createdOn": "2025-01-15T10:30:00Z",
"modifiedOn": "2025-01-20T14:45:00Z"
}
Example Request:
GET /api/v2/DataModels/3fa85f64-5717-4562-b3fc-2c963f66afa6
3. Get Data Model by Code
Retrieves a data model definition by its unique code.
Endpoint: GET /api/v2/DataModels/ByCode/{code}
Path Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
code | string | Yes | The data model code |
Response Statuses:
| Status Code | Description |
|---|---|
200 OK | Successfully retrieved the data model |
404 Not Found | Data model with the specified code does not exist |
Response Body:
Same as Get Data Model by ID.
Example Request:
GET /api/v2/DataModels/ByCode/Customer