Scan statistics by Lookup type and status using pagination
Learn how to scan Autopilot match statistics for a specific lookup type and status using cursor-based pagination.
The Scan statistics by lookup type and status API retrieves Autopilot match statistics for a specific lookup type and status directly from the database using cursor-based pagination. It 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 large datasets and ensures that results do not overlap or duplicate when processing filtered match statistics.
HTTP method and endpoint
Use the following HTTP method and endpoint path to submit the request:
POST /configuration/{tenantId}/autopilot/stats/{lookupType}/{status}/_dbscan?source={source}&limit={limit}
This endpoint scans Autopilot match statistics for the specified lookup type and status and returns results in pages using a cursor.
The following table describes the endpoint path parameters.
| Parameter | Type | Required | Description |
|---|---|---|---|
tenantId | String | Yes | Tenant identifier |
lookupType | String | Yes | Lookup type |
status | String | Yes | Status value, for example TRACKING or AUTOMAPPED |
Query parameters
The following table describes the query parameters.
| Parameter | Type | Required | Description | Accepted values / Default |
|---|---|---|---|---|
source | String | No | Filters by source system name. | — |
limit | Integer | No | Page size. | Default: 100, max: 100 |
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: "xyx" 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. |
totalCount | Number | Total number of times the unmapped value appeared in the evaluated period. |
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. |
configVersion | Number | Version of the configuration used when the mapping decision was generated. |
Example Response
The following example shows a successful response.
{
"scrollId": "eyJzIjoiMMKnJEZJTiTCrjHCpyRGSU4kwq4ywqckRklOJMKuM8KnJEZJTiTCrjTCpyRGSU4kwqkwOjU6NSJ9",
"values": [
{
"tenantId": "my_tenant",
"lookupType": "Currencies",
"source": "Reltio",
"unmappedValue": "British Pound Sterling",
"candidateLookupCode": "GBP Pound",
"candidateValue": "GBP Pound",
"semanticScore": 0.9245659,
"centroidMatch": true,
"currentFrequency": 4,
"requiredFrequency": 1,
"frequencyAtMapping": 4,
"frequencyWindowHours": 1,
"status": "AUTOMAPPED",
"mappedAt": 1775498978200,
"mappedBy": "SYSTEM",
"createdAt": 1775498973807,
"sourceFrequency": {
"totalCount": 4,
"hourlyFrequency": {
"1775498400000": 4
}
},
"updateDate": 1775498978200,
"aiConfidence": 0.98,
"aiReasoning": "The unmapped value 'British Pound Sterling' refers to the same currency as the candidate 'GBP Pound'.",
"configVersion": 6