Scan match statistics using filter
Learn how to scan Autopilot match statistics using filters with cursor-based pagination, filtering, and sorting.
The Scan Autopilot match statistics API retrieves Autopilot match statistics using pagination. It supports advanced filtering, sorting, and querying through expressions.
The API returns results in pages and includes a scrollId in each response. You use this scrollId in subsequent requests to retrieve the next set of results. This approach enables efficient traversal of filtered and sorted datasets.
HTTP method and endpoint
Use the following HTTP method and endpoint path to submit the request:
POST /configuration/{tenantId}/autopilot/stats/_scan?filter={filter}&limit={limit}&sort={sort}&order={order}
This endpoint scans Autopilot match statistics and returns results in pages, with support for filtering and sorting.
The following table describes the endpoint path parameters.
| Parameter | Type | Required | Description |
|---|---|---|---|
tenantId | String | Yes | Tenant identifier |
Query parameters
The following table describes the query parameters.
| Parameter | Type | Required | Description | Accepted values / Default |
|---|---|---|---|---|
filter | String | No | filter expression | — |
limit | Integer | No | Page size | Default: 100, max: 100 |
sort | String | No | Sort field name | — |
order | String | No | Sort order | asc or desc |
Request headers
The following request headers must be included.
| Header | Value | Required |
|---|---|---|
Authorization | Bearer {token} | Yes |
Request body
For the first request, omit the request body or send null. For subsequent requests, pass the scrollId returned by the previous response in the request body. For example, use the scroll ID: "xyz" in the next request to retrieve the following set of results.
Response body
The following table describes the fields returned in the response body.
| Field | Type | Description |
|---|---|---|
scrollId | String | Identifier used to retrieve the next set of results in the current scroll session. |
values | Array | List of result objects returned in the response. |
tenantId | String | Tenant identifier associated with the result. |
lookupType | String | Name of the lookup type. |
source | String | Source system or origin of the unmapped value. |
unmappedValue | String | Original source value that did not previously have a lookup mapping. |
candidateLookupCode | String | Lookup code selected as the candidate for mapping. |
candidateValue | String | Display value of the selected lookup candidate. |
semanticScore | Number | Similarity score assigned to the candidate match. |
centroidMatch | Boolean | Indicates whether the candidate matched the centroid-based comparison logic. |
currentFrequency | Number | Observed frequency of the unmapped value in the current evaluation window. |
requiredFrequency | Number | Minimum frequency threshold required before the value can be mapped automatically. |
frequencyAtMapping | Number | Frequency count recorded at the time the mapping was created. |
frequencyWindowHours | Number | Time window, in hours, used to calculate source frequency. |
status | String | Status of the mapping result. |
mappedAt | Number | Timestamp, in epoch milliseconds, when the value was mapped. |
mappedBy | String | User that created the mapping. |
createdAt | Number | Timestamp, in epoch milliseconds, when the result record was created. |
sourceFrequency | Object | Frequency summary for the unmapped value. |
sourceFrequency.totalCount | Number | Total number of times the unmapped value appeared in the evaluated period. |
sourceFrequency.hourlyFrequency | Object | Hourly breakdown of observed frequency, keyed by epoch-millisecond time buckets. |
updateDate | Number | Timestamp, in epoch milliseconds, when the result was last updated. |
aiConfidence | Number | Confidence score assigned by the AI model for the proposed mapping. |
aiReasoning | String | Explanation of why the candidate value was selected as a match. |
dcrId | String | Identifier of the data change request (DCR) associated with the mapping result, if applicable. |
configVersion | Number | Version of the configuration used when the mapping decision was generated. |
Response body
The following example shows a successful response.
{
"scrollId": "xyz",
"values": [
{
"tenantId": "my_tenant",
"lookupType": "Specialty",
"source": "Reltio",
"unmappedValue": "Cardiovascular Medicine",
"candidateLookupCode": "Cardiology",
"candidateValue": "Cardiology",
"semanticScore": 0.8898679,
"centroidMatch": false,
"currentFrequency": 5,
"requiredFrequency": 1,
"frequencyAtMapping": 5,
"frequencyWindowHours": 1,
"status": "AUTOMAPPED",
"mappedAt": 1775474337868,
"mappedBy": "SYSTEM",
"createdAt": 1775474334659,
"sourceFrequency": {
"totalCount": 5,
"hourlyFrequency": {
"1775473200000": 5
}
},
"updateDate": 1775474337868,
"aiConfidence": 0.92,
"aiReasoning": "Cardiovascular Medicine is an alternate name for the specialty of Cardiology, which deals with diseases of the heart and blood vessels.",
"configVersion": 1
},
{
"tenantId": "my_tenant",
"lookupType": "Specialty",
"source": "Reltio",
"unmappedValue": "Cardiovascular Specialist",
"candidateLookupCode": "Cardiology",
"candidateValue": "Cardiovascular Medicine",
"semanticScore": 0.8819044,
"centroidMatch": false,
"currentFrequency": 30,
"requiredFrequency": 1,
"frequencyAtMapping": 30,
"frequencyWindowHours": 1,
"status": "MANUALLY_MAPPED",
"mappedAt": 1775474666342,
"mappedBy": "your_user",
"createdAt": 1775474542454,
"sourceFrequency": {
"totalCount": 30,
"hourlyFrequency": {
"1775473200000": 30
}
},
"updateDate": 1775474666342,
"aiConfidence": 0.92,
"aiReasoning": "The unmapped value 'Cardiovascular Specialist' refers to the same specialty as the candidate 'Cardiovascular Medicine', which has the code 'Cardiology'.",
"dcrId": "93ceaf7e-f035-469e-89be-6a88a823c092",
"configVersion": 2
}
]
}