---
title: "Fetch device info"
url: "https://developer.incode.com/api-reference/get-device-info/"
section: "api-reference"
group: "Interview"
version: "v1.1"
status: "live"
endpoint: "GET /omni/get/device-info"
---
# Fetch device info

`GET /omni/get/device-info`

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

Fetch information about device user was using during onboarding

## Path & query parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | query | string |  | Represents interview id for which device data are requested. If it is not present it will be read from token. |
| `returnData` | query | boolean |  | If it is set to true, string representation of map which contains all data that enters the hash will be returned. |
| `api-version` | header | string | yes |  |

## Responses

### 200

OK

Response body (`application/json`):

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `ipAddress` | string |  | IP address of the device from which onboarding is being executed. |
| `hash` | string |  | Hash is generated out of data specific to user device and browser: userAgent, webdriver, language, colorDepth, deviceMemory, hardwareConcurrency, screenResolution, availableScreenResolution, timezoneOffset, timezone, sessionStorage, localStorage, indexedDb, cpuClass, platform, plugins, canvas, webgl, webglVendorAndRenderer, adBlock, hasLiedLanguages, hasLiedResolution, hasLiedOs, hasLiedBrowser, touchSupport, fonts, audio. |
| `deviceType` | string |  | Device type Enum: `IOS`, `ANDROID`, `WEBAPP` |
| `osVersion` | string |  |  |
| `deviceModel` | string |  |  |
| `sdkVersion` | string |  |  |
| `browser` | string |  |  |
| `hasLiedBrowser` | boolean |  |  |
| `longitude` | number (float) |  | User's geolocation longitude. |
| `latitude` | number (float) |  | User's geolocation latitude. |
| `location` | string |  | User's location at the moment of onboarding process. |
| `getmAdminArea` | string |  | State |
| `getmSubAdminArea` | string |  | County |
| `getmLocality` | string |  | City |
| `getmSubLocality` | string |  | Neighborhood, common name |
| `getmThoroughfare` | string |  | Street name. |
| `getmSubThoroughfare` | string |  | Number. |
| `getmPostalCode` | string |  | Zip code |
| `getmCountryCode` | string |  | Country code |
| `getmCountryName` | string |  | Country name |
| `hostingApp` | string |  | Hosting App |

### 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 |

## Code samples

Generated from this endpoint's method, path, and the conventional Incode headers. The base URL is the Incode demo environment; replace `<YOUR_API_KEY>` with a key for your region.

### cURL

```bash
curl -X GET https://demo-api.incodesmile.com/omni/get/device-info \
  -H "x-api-key: <YOUR_API_KEY>" \
  -H "api-version: 1.0"
```

### Node

```js
const res = await fetch("https://demo-api.incodesmile.com/omni/get/device-info", {
  method: "GET",
  headers: {
      "x-api-key": "<YOUR_API_KEY>",
      "api-version": "1.0",
  },
});
const data = await res.json();
```

### Python

```python
import requests

headers = {
    "x-api-key": "<YOUR_API_KEY>",
    "api-version": "1.0",
}
res = requests.get("https://demo-api.incodesmile.com/omni/get/device-info", headers=headers)
data = res.json()
```

### Java

```java
HttpRequest req = HttpRequest.newBuilder()
    .uri(URI.create("https://demo-api.incodesmile.com/omni/get/device-info"))
    .header("x-api-key", "<YOUR_API_KEY>")
    .header("api-version", "1.0")
    .method("GET", HttpRequest.BodyPublishers.noBody())
    .build();
HttpResponse<String> res = HttpClient.newHttpClient()
    .send(req, HttpResponse.BodyHandlers.ofString());
```

### Example response

```json
{
  "success": true,
  "status": "OK"
}
```
