Accelerate the Value of Data

Create Entities

This operation creates a collection of entities in Reltio Platform according to JSON object definition.

This operation can be used to create just one entity if desired by loading only a single object into the array.

If you POST the entity with some crosswalks (for example, crosswalk1 and crosswalk2), and they correspond to some existing entities (entity1 and entity2) in the Reltio system, then these entities are merged in one entity (survivor, for example, entity1 would be merged in entity2). After this occurs, the resultant entity (survivor, for example, entity2) is updated with the new information from a posted entity. Otherwise, if no entities are found or provided in the posted entity crosswalks, or no crosswalks are provided, then a new entity is created.

For more information about update and merge operations, see corresponding sections of Entities API.

Note: If you do not specify roles inside a POST /entities request, then all roles from the entity being overwritten will remain unchanged. If you want to remove all roles from the result entity, then you must specify an empty array of Roles inside the POST /entities request.

Request

POST {TenantURL}/entities
Table 1. Parameters
Parameter Required Description
Headers Authorization Yes Information about authentication access token in format Bearer <accessToken>. For more information, see Authentication API.
Content-Type Yes Should be Content-Type: application/json.
Query returnObjects No Specifies if the response should contain created entities. Default is true.
options No Comma-separated list of different options which affect relation's JSON content in a response and in the override process. Available options:
  • ov=false: disabled by default. Entity's JSON in response contains hidden attributes if this option is enabled.
  • partialOverride: disabled by default. In case of override of entity, when a match with an existing entity is found, only attributes that are provided in a request are updated. If this option is enabled, all other attributes are affected.
  • partialOverrideForReference: used for POST /entities (override entity) request. If true, all attributes are overridden; however, for references, no attributes are touched that are not involved with referencedAttributeURIs.
  • updateAttributeUpdateDates: disabled by default. If the singleAttributeUpdateDates property is present, then the property of crosswalks is updated for changed and new attributes in case of an override of an entity and when a match with an existing entity is found.

    The singleAttributeUpdateDatesproperty allows you to store the dates when each entity attribute is updated. By default, this date is not saved if the entity is overwritten. It is assumed that the dates on which all attributes are updated are equal to the last date when the crosswalks and the related attributes are updated.

    To change the survivorship of the attribute, you may update the date of an changed attribute, especially if the selected survivorship strategy is Recency.

  • ovOnly: return only attribute values that have the ov=true flag.
  • nonOvOnly: return only attribute values that have the ov=false flag. If you have a nested or reference attribute value, where ov=true, but sub-attributes, where ov=false, then these sub-attributes do not appear in the response.
  • preserveURIs: if specified, the API takes into account the URIs that are specified for attribute values inside the request.
  • preserveHidden: if specified, the API does not create a DCR to delete hidden attributes if they are not specified in the request.
maxObjectsToUpdate No
Note: The maxObjectsToUpdate parameter will be deprecated. Therefore, we recommend you do not use this parameter and instead, use the Configuring Analytic Attributes feature. For more information, see deprecateservice.dita.
Specifies the maximum number of events generated by the create/update request for any related objects.
executeLCA No Specifies the Lifecycle Actions. They should be triggered during this request. Default is true. For more information, see LCA Framework.
Note: During dataload, for asynchronous incremental match thread, LCA is called regardless of the executeLCA value.
alwaysCreateDCR No If true, create a DCR without creating entities. Example: POST {TenantURL}/entities?alwaysCreateDCR=true
Note: DCR is created in two cases only: 1) there is a changeRequestId parameter, and 2) there are no CREATE and UPDATE privileges for all incoming entities, but there are READ and INITIATE_CHANGE_REQUEST for all of them.
Body Yes JSON Array with objects representing entity objects to be created. Each object must have the type property but will not have the URI or crosswalks properties (they are provided/generated by the Reltio API).

Response

Array with results for each element of a request. Each result has the following properties:

  • index: index of an entity object in JSON Array of entities to be created and is required in a response.
  • object: entity object that is created. This parameter is returned if the returnObjects query parameter in the request is not false and the object was created successfully. It returns a complete entity object (the same as returned by the Get Entity request without any select parameters.
    Note: By default, hidden attributes are not returned in a response. Use the options=ov=false parameter in the request to change this behavior.
  • successful: indicates if the request is successful. Returns true for success; otherwise, returns false.
  • errors: for some reason, the object cannot be created. Contains details of the issue. Returned only if the object is not created.
    • Possible errors:
      • warning: if object is created but there were some problems.
      • status: result of operation; possible values are OK or failed.

Request

POST {
	TenantURL
}
/entitiesHeaders: Authorization: Bearer
204938 ca-2 cf7-44 b0-b11a-1 b4c59984512, Content-Type: application / jsonBody: [{
		"type": "configuration/entityTypes/Individual",
		"tags": ["sport", "movies"]
	}, {
		"roles": ["configuration/roles/Client", "configuration/roles/Prospect"],
		"attributes": {
			"FirstName": [{
				"value": "Ivan"
			}, {
				"type": "configuration/entityTypes/Individual/attributes/FirstName",
				"value": "John"
			}]
		}
	},
	{
		"type": "configuration/entityTypes/Organization"
	}
] 

Response

POST {
	TenantURL
}
/entitiesHeaders: Authorization: Bearer
204938 ca-2 cf7-44 b0-b11a-1 b4c59984512, Content-Type: application / json Body: [{
	"index": 0,
	"URI": "entities/10",
	"object": {
		"URI": "entities/10",
		"type": "configuration/entityTypes/Individual",
		"tags": ["sport", "movies"]
	},
	"status": "OK"
}, {
	"index": 1,
	"error": {..
		"type property is required"..
	},
	"status": "failed"
}, {
	"index": 3,
	"URI": "entities/11",
	"object": {
		"URI": "entities/11",
		"type": "configuration/entityTypes/Organization"
	},
	"warning": {
		"code": 20001,
		"message": "Created entity has no attributes"
	},
	"status": "OK"
}]

Retrieve or modify the entity startDate and endDate

You can make a request for information about activeness for the entity startDate and endDate.

Request

GET https://360.reltio.com/reltio/api/9lhus1A723AurLC/entities/2EinumL/activeness