> ## Documentation Index
> Fetch the complete documentation index at: https://docs.linquid.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Device Analytics

> Workspace and link-level device/browser/OS breakdowns

# Device Analytics

## Endpoints

* `GET /api/analytics/workspace/devices`
* `GET /api/analytics/{linkId}/devices`

## Query parameters

<ParamField query="days" type="number" default="30">
  Date window (`1..365`)
</ParamField>

<ParamField query="start" type="string">
  Optional explicit start date
</ParamField>

<ParamField query="end" type="string">
  Optional explicit end date
</ParamField>

<ParamField query="timezone" type="string">
  Optional timezone used when resolving date boundaries
</ParamField>

## Access and gates

* Permission: `analytics:read`
* Link-level device endpoint requires `deviceRouting` feature

## Response model

Workspace endpoint returns:

* `deviceData`
* `browserData`
* `osData`

Plan-aware behavior:

* Device, browser, and OS objects can be selectively empty on plans that do not include that breakdown type.

Link endpoint returns:

* `devices`
* `browsers`
* `os`

and validates link ownership in workspace scope.

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.linquid.io/api/analytics/workspace/devices?days=7" \
    -H "Authorization: Bearer <token>"
  ```
</RequestExample>

## Common errors

* `403`: required feature not available
* `404`: link not found (link endpoint)
* `500`: analytics backend/query failure
