CreateLink - POST
|
Path |
/api/projects/{projectId}/model/links |
|---|---|
|
Http Method |
POST |
Overview
Create a link.
Required permissions
-
Write access to the Build module. BUILD WRITE
Request
Request body
{
"name": "string",
"technicalDescription": "string",
"businessDescription": "string",
"linkType": "string",
"linkReferences": [
{
"id": "string",
"columnName": "string",
"order": 0,
"link": "uri"
}
],
"dependentChildColumns": [
{
"linkId": "string",
"columnName": "string",
"dataType": "string",
"length": 0,
"precision": 0,
"scale": 0
}
],
"dataColumns": [
{
"linkId": "string",
"columnName": "string",
"dataType": "string",
"length": 0,
"precision": 0,
"scale": 0
}
]
}
Field descriptions
|
Field |
Type |
Required |
Description |
Constraints |
|---|---|---|---|---|
|
name |
string |
yes |
The name of the entity. |
Link names should only contain alphanumeric characters and underscored, and must start with a character. Maximum length is 25 characters, minimum is 2. |
|
technicalDescription |
string |
no |
The technical description of the link. |
|
|
businessDescription |
string |
no |
The business description of the link. |
|
|
hubReferences |
array |
Yes |
Array of hub references |
At least one required |
|
hubReferences[].id |
string |
No |
Hub reference identifier |
|
|
hubReferences[].columnName |
string |
Yes |
Column name for the hub reference |
|
|
hubReferences[].order |
integer |
Yes |
Order of the hub reference |
|
|
hubReferences[].hub |
uri |
Yes |
URI reference to the hub |
|
|
dependentChildColumns |
array |
No |
Array of dependent child columns |
|
|
dependentChildColumns[].linkId |
string |
No |
Link identifier |
|
|
dependentChildColumns[].columnName |
string |
Yes |
Column name |
|
|
dependentChildColumns[].dataType |
string |
Yes |
The name of the type of the column. This is one of .NET’s |
|
|
dependentChildColumns[].length |
integer |
No |
Length of the column |
|
|
dependentChildColumns[].precision |
integer |
No |
Precision of the column |
|
|
dependentChildColumns[].scale |
integer |
No |
Scale of the column |
|
|
dataColumns |
array |
No |
Array of data columns |
|
|
dataColumns[].linkId |
string |
No |
Link identifier |
|
|
dataColumns[].columnName |
string |
Yes |
Column name |
|
|
dataColumns[].dataType |
string |
Yes |
The name of the type of the column. This is one of .NET’s |
|
|
dataColumns[].length |
integer |
No |
The length of the type. |
Relevant for column types that have length, like char or byte strings. |
|
dataColumns[].precision |
integer |
No |
The precision of the type. |
Relevant for column types that have precision like decimal. |
|
dataColumns[].scale |
integer |
No |
The scale of the type. |
Relevant for column types that have scale like decimal. |
Response
Success response (200 OK)
{
"self": "/api/projects/{projectId}/model/links/{linkId}",
"id": "link-12345",
"name": "CustomerOrderLink",
"linkType": "Relationship",
"businessDescription": "Links customers to orders",
"technicalDescription": "Link table connecting customer and order hubs",
"deployedInProduction": false,
"tableName": "LNK_CUSTOMER_ORDER",
"entityType": "Link",
"dependentChildColumns": [
{
"id": "col-1",
"columnName": "LOAD_DATE",
"dataType": "DateTime",
"length": null,
"precision": null,
"scale": null,
"typeFullName": "DateTime"
}
],
"dataColumns": [],
"_embedded": {
"hubReferences": {
"self": "/api/projects/{projectId}/model/links/{linkId}/hubreferences",
"total": 2,
"_embedded": {
"hubReferences": [
{
"id": "hr-1",
"columnName": "CUSTOMER_HK",
"order": 0,
"hubId": "hub-123",
"linkId": "link-12345",
"_links": {
"hub": "/api/projects/{projectId}/model/hubs/hub-123"
}
}
]
}
}
}
}
Response fields
|
Field |
Type |
Description |
|---|---|---|
|
name |
string |
The name of the entity. |
|
technicalDescription |
string |
The technical description of the link. |
|
businessDescription |
string |
The business description of the link. |
|
_embedded.hubReferences.self |
string |
Url to get the hub reference of the link created |
|
_embedded.hubReferences.total |
int |
Number of hub references in the link |
|
_embedded.hubReferences._embedded.hubReferences[].id |
string |
Hub reference identifier |
|
_embedded.hubReferences._embedded.hubReferences[].columnName |
string |
Column name for the hub reference |
|
_embedded.hubReferences._embedded.hubReferences[].order |
integer |
Order of the hub reference |
|
_embedded.hubReferences._embedded.hubReferences[].hubid |
string |
ID of the referenced hub |
|
_embedded.hubReferences._embedded.hubReferences[].linkId |
string |
ID of the link |
|
_embedded.hubReferences._embedded.hubReferences[]._links.hub |
uri |
URI reference to the hub |
|
dependentChildColumns |
array |
Array of dependent child columns |
|
dependentChildColumns[].linkId |
string |
Link identifier |
|
dependentChildColumns[].columnName |
string |
Column name |
|
dependentChildColumns[].dataType |
string |
The name of the type of the column. This is one of .NET’s |
|
dependentChildColumns[].length |
integer |
Length of the column |
|
dependentChildColumns[].precision |
integer |
Precision of the column |
|
dependentChildColumns[].scale |
integer |
Scale of the column |
|
dataColumns |
array |
Array of data columns |
|
dataColumns[].linkId |
string |
Link identifier |
|
dataColumns[].columnName |
string |
Column name |
|
dataColumns[].dataType |
string |
The name of the type of the column. This is one of .NET’s |
|
dataColumns[].length |
integer |
The length of the type. |
|
dataColumns[].precision |
integer |
The precision of the type. |
|
dataColumns[].scale |
integer |
The scale of the type. |
Response links and embedded objects
|
Name |
Link |
Constraints |
|---|---|---|
|
project |
|
|
|
satellites |
|
|
|
pitTables |
|
|
|
mappings |
|
|
|
hubReferences |
|
|