Configuration API
Configure the tenant metadata.
At a business level, a tenant is defined by its Metadata Configuration (aka it’s “L3”) and its UI Configuration. The methodology usually includes performing a GET Configuration (with no inheritance) to retrieve the current L3 configuration, using a JSON editor to modify the configuration, then using the Set Configuration API to PUT the resulting L3 back to your tenant. The two most important and often used API calls in this section are GET Configuration and Set Configuration. Add and Remove Source endpoints are seldom used. Sources are usually defined in the L3 during configuration using the methodology above.
- Run the Validation API before you post the new L3 configuration into the tenant.
- Scan the metadata configuration for misconfiguration or any violation of best practices. If any errors are found, then these errors should be fixed before posting the business configuration to the tenant.
GET env_uri/reltio/api/tenant/configuration/_validateTenantConfiguration
For additional information about configuration validation errors, refer to L3 validation errors.
For additional information about configuration concepts, refer to Tenant data configuration.
GET
with
Inheritance to understand the consolidated configuration of all the layers (L1, L2, L3).
But, when editing the configuration, it is extremely important to Get
and
Set
only the L3 layer of the configuration. To do this you must make
another GET
request using the _noinheritance
option. This
retrieves only the L3 layer which is the layer tightly bound to your tenant. Once you have
modified it to your liking then you should use the Set
Configuration API
to PUT
only that L3 layer back to your tenant. Never apply a
consolidated configuration to the tenant. Object Structure
This section describes the first-level properties of the Configuration resource.
Property name | Required | Description | Type |
---|---|---|---|
|
Yes for response JSON |
Path that is used to reach configuration. It is always configuration. |
String |
|
No |
Details for a configuration. |
String |
|
No |
Readable name for a model. |
String |
|
Yes |
Version of Reltio API Configuration schema used to describe objects. |
String |
|
Yes |
A collection of Entity Types defined for a tenant. |
Array of Entity Types |
|
No |
A collection of Role Types defined for a tenant. |
Array of Roles |
|
No |
A collection of Group Types defined for a tenant. |
Array of Group Types |
|
No |
A collection of Relation Types defined for a tenant. |
Array of Relation Types |
|
No |
Define the Graph Types in a tenant configuration. |
Array of Graph Types |
|
No |
A collection of Interaction Types defined for a tenant. |
Array of Interaction Types |
|
No |
A collection of Interaction Types defined for a tenant. |
Array of Sources |
Configuration JSON Example
{
"URI":"configuration",
"label":"Test Business Model",
"description":"Test Business Model Configuration-used to describe Configuration API
format",
"schemaVersion":"1",
"entityTypes":[
{
"URI":"configuration/entityTypes/Individual",
"label":"Individual",
"id":"3",
"description":"These entity types for representing people",
"typeColor":"#00FF00",
"typeIcon":"entityType/Individual.png",
"typeGraphIcon":"entityType/IndividualSmall.png",
"typeImage":"defaultImage/no-photo.png",
"dataLabelPattern":"{configuration/entityTypes/Individual/attributes/FirstName}",
"entitySmartLogic":"Person",
"entityTypeRoleURIs":[
"configuration/roles/Client",
"configuration/roles/Advisor"
],
"attributes":[
{
"URI":"configuration/entityTypes/Individual/attributes/FirstName",
"name":"FirstName",
"id":"4",
"label":"First Name",
"type":"String"
},
{
"URI":"configuration/entityTypes/Individual/attributes/Gender",
"name":"Gender",
"id":"5",
"label":"Gender",
"type":"String",
"values":[
"Male",
"Female",
"Unknown"
]
},
{
"URI":"configuration/entityTypes/Individual/attributes/ImageLinks",
"name":"ImageLinks",
"id":"6",
"label":"Image Links",
"type":"Image URL"
},
{
"URI":"configuration/entityTypes/Individual/attributes/Address",
"name":"Address",
"label":"Address",
"id":"9",
"type":"Reference",
"referencedEntityTypeURI":"configuration/entityTypes/Location",
"relationshipTypeURI":"configuration/relationshipTypes/HasAddress",
"relationshipLabelPattern":"{configuration/relationshipTypes/HasAddress/attributes/AddressType}",
"referecedAttributeURIs":[
"configuration/relationshipTypes/HasAddress/attributes/AddressType",
"configuration/entityTypes/Location/attributes/City"
]
}
],
"businessCardAttributeURIs":[
"configuration/entityTypes/Individual/attributes/FirstName",
"configuration/entityTypes/Individual/attributes/Gender"
],
"imageAttributeURIs":[
"configuration/entityTypes/Individual/attributes/ImageLinks"
]
},
{
"URI":"configuration/entityTypes/Location",
...
}
],
"roles":[
{
"URI":"configuration/roles/Client",
"label":"Client",
"id":"1",
"description":"Client role-highlight entities who are clients"
},
{
"URI":"configuration/roles/Advisor",
"label":"Advisor",
"id":"2",
"description":"Advisor is an employee of a company working with clients."
}
],
"groupTypes":[
{
"URI":"configuration/groupTypes/XYZHHGroupType",
"id":"16",
"label":"XYZ Household",
"type":"manual",
"description":"Information about households loaded from XYZ system",
"dataLabelPattern":"[primaryMember]({configuration/entityTypes/Individual/attributes/FirstName})
Household",
"hasPrimaryMember":true,
"attributes":[
{
"URI":"configuration/groupTypes/XYZHHGroupType/attributes/Notes",
"name":"Notes",
"id":"17",
"label":"Notes",
"type":"String"
}
],
"groupElements":[
{
"URI":"configuration/groupTypes/XYZHHGroupType/groupElements/IndividualEntities",
"id":"18",
"entityTypeURIs":[
"configuration/entityTypes/Individual"
]
}
],
"memberTypes":[
{
"URI":"configuration/groupTypes/XYZHHGroupType/memberTypes/Member",
"id":"19",
"label":"Member",
"primaryMember":false
},
{
"URI":"configuration/groupTypes/XYZHHGroupType/memberTypes/PrimaryMember",
"id":"20",
"label":"Primary Member",
"primaryMember":true
}
]
}
],
"relationTypes":[
{
"URI":"configuration/relationTypes/Spouse",
"id":"25",
"label":"spouse",
"description":"Spousal relationship between husband and wife.",
"typeColor":"#663344",
"implicit":true,
"direction":"undirected",
"attributes":[
{
"URI":"configuration/relationTypes/Spouse/attributes/WeddingPlace",
"name":"WeddingPlace",
"id":"26",
"label":"Wedding Place",
"type":"String"
}
],
"startObject":{
"URI":"configuration/relationTypes/Spouse/startObject",
"objectURI":"configuration/roles/Party"
},
"endObject":{
"URI":"configuration/relationTypes/Spouse/endObject",
"objectURI":"configuration/entityTypes/Location"
}
},
{
"URI":"configuration/relationTypes/HasAddress",
...
}
],
"interactionTypes":[
{
"URI":"configuration/interactionTypes/Meeting",
"id":"31",
"label":"Meeting",
"attributes":[
{
"URI":"configuration/interactionTypes/Meeting/attributes/Place",
"name":"Place",
"id":"32",
"label":"Place",
"type":"String"
},
{
"URI":"configuration/interactionTypes/Meeting/attributes/Notes",
"name":"Notes",
"id":"33",
"label":"Notes",
"type":"String"
}
],
"memberTypes":[
{
"URI":"configuration/interactionTypes/Meeting/memberTypes/participants",
"name":"participants",
"id":"34",
"label":"participants",
"objectURI":"configuration/entityTypes/Individual",
"minOccurs":1
},
{
"URI":"configuration/interactionTypes/Meeting/memberTypes/organizers",
"name":"organizers",
"id":"35",
"objectURI":"configuration/entityTypes/Individual",
"label":"organizers",
"minOccurs":1
}
]
}
],
"graphTypes":[
{
"URI":"configuration/graphTypes/SpouseGraph",
"id":"37",
"graphStructure":"network",
"type":"logical",
"layout":"family",
"label":"Family Graph",
"relationshipTypeURIs":[
"configuration/relationshipTypes/SpouseGraph"
]
}
],
"sources":[
{
"URI":"configuration/sources/XYZ",
"id":"39",
"abbreviation":"XYZ",
"label":"MDM",
"icon":"source/xyz.png"
},
{
"URI":"configuration/sources/Reltio",
"id":"40",
"abbreviation":"Reltio",
"label":"Reltio source system",
"icon":"source/reltio.png"
}
]
}