# Fetch authentication attempts

`POST /omni/authentications/external/search`

Base URL: `https://demo-api.incodesmile.com` — Incode demo environment

This API allows for searching through stored authentication records, providing insight into both 1:1 (one to one) and 1:N (one to many) authentication modes. It includes data for successful and failed login attempts, enabling an overview of authentication activity within the organization. 
Works with <Glossary>Admin Token</Glossary>.

## Path & query parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `offset` | query | integer (int32) |  |  |
| `limit` | query | integer (int32) |  |  |
| `api-version` | header | string | yes |  |

## Request body

Content-Type: `application/json`

## Responses

### 200

OK

Response body (`application/json`):

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `authenticationAttempts` | array[AuthenticationAttemptExternalDto] |  |  |
| `authenticationAttempts.customerId` | string |  |  |
| `authenticationAttempts.deviceType` | string |  | Enum: `IOS`, `ANDROID`, `WEBAPP` |
| `authenticationAttempts.deviceName` | string |  |  |
| `authenticationAttempts.version` | string |  |  |
| `authenticationAttempts.isSpoof` | boolean |  |  |
| `authenticationAttempts.get_updatedAt` | integer (int64) |  |  |
| `authenticationAttempts.url` | string |  |  |
| `authenticationAttempts.isAuthenticated` | boolean |  |  |
| `authenticationAttempts.recognitionConfidence` | number (float) |  |  |
| `authenticationAttempts.source` | string |  |  |
| `authenticationAttempts.transactionId` | string |  |  |
| `authenticationAttempts.authenticationType` | string |  | Enum: `ONE_TO_ONE`, `ONE_TO_N` |
| `authenticationAttempts.authenticationMethod` | string |  | Enum: `server`, `local`, `hybrid` |
| `authenticationAttempts.faceEnrollmentForced` | boolean |  |  |
| `authenticationAttempts.isBlocklisted` | boolean |  |  |
| `authenticationAttempts.clientRecognitionThreshold` | number (float) |  |  |
| `authenticationAttempts.clientLivenessThreshold` | number (float) |  |  |
| `authenticationAttempts.blocklistConfidence` | number (float) |  |  |
| `authenticationAttempts.videoRecordingUrl` | string |  |  |
| `total` | integer (int32) |  |  |
| `more` | boolean |  |  |

### 400

Bad Request

Response body (`application/json`):

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `timestamp` | integer (int64) |  | UTC timestamp in milliseconds |
| `status` | integer (int32) |  | Custom error code or HTTP status code |
| `error` | string |  | HTTP status error |
| `message` | string |  | Custom error message |
| `path` | string |  | Endpoint path |
| `details` | object |  | Custom error details |
