Interaction Types
Define types of interactions that are recognized by a tenant configuration.
The Interaction Types section of Configuration API is responsible for defining types of interactions that are recognized by a tenant configuration. An interaction is generally any kind of transaction-like event that has a date and time associated with it. These could be purchases, prescriptions, claims, call center activity, etc.
Object Structure
A collection of Interaction Types can be defined for a tenant configuration. Each Interaction Type has the following properties:
Property | Description | Type |
---|---|---|
URI
|
Path that is used to reach the interaction type. Format:
configuration/interactionTypes/{TypeName}
Required. |
String, URI |
id
|
Internal, system-generated ID. Used internally to get the difference between two versions of configurations when a configuration is updated. Required for the response JSON. | String |
label
|
Readable name of the Interaction Type. Required. | String |
description
|
Description for the Interaction type. | String |
extendsTypeURI
|
URI of an Interaction Type which is extended by this type. | String, URI |
memberTypes
|
A collection of possible member types. Examples can be:
Participant, Organizer. Member type properties:
|
Complex |
attributes
|
Attributes that are defined as standard for this type. Attributes can be of simple,
nested and reference type. For details, refer to Attributes configuration. Note: Not every interaction object
will have all attributes defined in its interaction type. Also,
an interaction object can have some attributes that are not
defined in the configuration-custom attributes.
|
JSON object of Attributes Configuration |
ignoreUniqueness |
If true , Data Access API and
compaction will not perform uniqueness resolution (de-duplication)
for interactions of this type. If false , regular
uniqueness resolution is performed. Default is
false . |
Boolean |
Interaction Type: Meeting
Example of a Meeting
Interaction Type configuration:
{
"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",
"objectTypeURI": ["configuration/entityTypes/Individual"],
"minOccurs": 1
}, {
"URI": "configuration/interactionTypes/Meeting/organizers",
"name": "organizers",
"label": "organizers",
"id": "35",
"objectTypeURI": ["configuration/entityTypes/Individual"],
"label": "organizers",
"minOccurs": 1
}]
}
Interaction Type: Prescription
Example of a Prescription
Interaction Type configuration:
"interactionTypes": [{
"URI": "configuration/interactionTypes/Prescription",
"label": "Prescription",
"ignoreUniqueness": true,
"memberTypes": [{
"URI": "configuration/interactionTypes/Prescription/memberTypes/Beneficiary",
"label": "Beneficiary",
"name": "Beneficiary",
"objectTypeURI": "configuration/entityTypes/Beneficiary"
}, {
"URI": "configuration/interactionTypes/Prescription/memberTypes/Product",
"label": "Product",
"name": "Product",
"objectTypeURI": "configuration/entityTypes/Product",
"minOccurs": 2
}]
}