IdentifyReconcile API - POST /now/identifyreconcile/query

Determines the operation (insert/update) that will be performed with the specified payload without committing the operation in the database.

URL format

Versioned URL: /api/now/v1/identifyreconcile/query

Default URL: /api/now/identifyreconcile/query

Supported request parameters

Table 1. Parameters
Parameter Description
None

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

Table 2. Request headers
Header Description
Accept Specify application/json
Content-type Specify application/json
Table 3. Response headers
Header Description
None

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, seeREST response codes.

Table 4. Status codes
Status code Description
200 Success

Request body

The API accepts a JSON formatted string of configuration items to be added or updated. Each input string is in the format  'items: [{}], relations:[{}]', where each item within the items and relations lists contains name-value pairs.

Table 5. Elements accepted in the request body
Element Description
items: [{}]
The possible name-value pairs within the items list are:
  • className - the sys_class_name of the CI to be created or updated.
  • values:{} - the field information for the CI as name-value pairs, where the name is the field name.
  • lookup:[{}] - a list of records with each item having name-value pairs like the items list.
relations:[{}]
The possible name-value pairs within the relations list are:
  • parent - index of the parent item in the dependency relation
  • child - index of the child item in the dependency relation
  • type - the relationship type. This is one of the name field values from the cmdb_rel_type table.

Response body

The API returns a JSON formatted string that is a list of results. Each result string is in the format  'items: [{}], relations:[{}]', where each item within the items and relations lists contains name-value pairs.

Table 6. Elements returned in the response body
Element Description
items: [{}]
The possible name-value pairs within the items list are:
  • className- the sys_class_name for the CI that was updated or created.
  • operation, which is one of INSERT, UPDATE, UPDATE_WITH_UPGRADE, UPDATE_WITH_DOWNGRADE, UPDATE_WITH_SWITCH, DELETE, NO_CHANGE
  • sysId - the sys_id of the CI that was updated or created.
  • relatedSysIds - a list of sys_id values of CIs used during lookup based identification.
  • identifierEntrySysId - sys_id of identifier entry used during matching.
  • errors - a list of errors in the format of (error, message string), where error can be ABANDONED, INVALID_INPUT_DATA, IDENTIFICATION_RULE_MISSING, IDENTIFICATION_RULE_FOR_LOOKUP_MISSING, NO_LOOKUP_RULES_FOR_DEPENDENT_CI, NO_CLASS_NAME_FOR_INDEPENDENT_CI, MISSING_DEPENDENCY, MULTIPLE_DEPENDENCIES, MULTIPLE_DUPLICATE_RECORDS, RELATION_CHAIN_ENDS_AT_QUALIFIER, QUALIFICATION_LOOP, TYPE_CONFLICT_IN_QUALIFICATION, MULTI_MATCH, REQUIRED_ATTRIBUTE_EMPTY, RECLASSIFICATION_NOT_ALLOWED
  • duplicateIndices - a list of indexes of items that are duplicates of the current item.
  • identificationAttempts - a list of attempts in the format of (attributes, identiferName, attemptResult, searchOnTable) where
    • attributes - the attributes of identifier entry used during identification
    • identiferName - the CI identifier to which this identifier entry belongs
    • attemptResult - one of SKIPPED, NO_MATCH, MATCHED, MULTI_MATCH
    • searchOnTable - the table searched during the identification process.
relations:[{}]
The possible name-value pairs within the relations list are:
  • className - the relationship CI's class name and is always cmdb_rel_ci
  • operation - one of INSERT, UPDATE, NO_CHANGE
  • sysId - the sys_id of the relationship CI inserted or updated