Assist

Как искать все активные сессии для определённого проекта.

Assist

Получение активных сессий

Section titled Получение активных сессий

Возвращает список активных сессий для определённого проекта. При необходимости можно отфильтровать по userId с помощью параметра запроса.

Значения по умолчанию, применяемые на стороне сервера: sort = timestamp, order = desc, limit = 10, page = 1.

GET

/public/:projectKey/assist/sessions

NameTypeDescription
projectKeystringКлюч проекта (обязательно)
userIdstringНеобязательное значение tracker.setUserID (параметр запроса в URL)

Заголовки запроса

Section titled Заголовки запроса

Authorization: Bearer {YOUR_ORGANIZATION_API_KEY}

curl -X GET \
  '{BASE_URL}/public/aYYaFHiagqdXKEmVlmvJ/assist/sessions?userId=mickael@openreplay.com' \
  -H 'Authorization: Bearer {YOUR_ORGANIZATION_API_KEY}'
{
  "data": {
    "total": 1,
    "sessions": [
      {
        "pageTitle": "OpenReplay Blog",
        "sessionID": "6975518573799938",
        "metadata": {},
        "userID": "mickael@openreplay.com",
        "userUUID": "8998545b-553c-4f41-a39d-d7cba7fac2d1",
        "projectKey": "aYYaFHiagqdXKEmVlmvJ",
        "timestamp": 1656437966459,
        "trackerVersion": "3.5.11",
        "userOs": "Mac OS",
        "userBrowser": "Chrome",
        "userBrowserVersion": "103.0.0.0",
        "userDeviceType": "desktop",
        "userCountry": "FR",
        "live": true,
        "projectId": 3
      }
    ],
    "live": true
  }
}

Поиск активных сессий

Section titled Поиск активных сессий

Выполняет поиск по списку активных сессий для определённого проекта с использованием тела запроса в формате JSON.

Значения по умолчанию, применяемые на стороне сервера при их отсутствии: sort = timestamp, order = desc, limit = 10, page = 1.

POST

/public/:projectKey/assist/sessions

NameTypeDescription
projectKeystringКлюч проекта (обязательно)
NameTypeDescription
sortstringАтрибут сортировки (по умолчанию: timestamp)
orderstringasc или desc (по умолчанию: desc)
pageintegerНомер страницы для пагинации (по умолчанию: 1)
limitintegerКоличество сессий на странице (по умолчанию: 10)
filtersarray of filterСписок фильтров (по умолчанию: [])

Объект фильтра:

NameTypeDescription
namestringАтрибут фильтра (обязательно, напр. userId). Используйте METADATA с source ниже
operatorstringcontains или is (по умолчанию: contains)
valuestring[]Список значений (по умолчанию: [])
sourcestringИмя атрибута метаданных, когда name = METADATA (по умолчанию: "")

Если value = [], поиск находит активные сессии, у которых задан указанный атрибут (с любым значением).

Заголовки запроса

Section titled Заголовки запроса

Authorization: Bearer {YOUR_ORGANIZATION_API_KEY}

В следующем примере выполняется поиск первых 10 активных сессий (отсортированных по timestamp по убыванию), где userId содержит openreplay, а metadata.plan равно trial или free.

curl -X POST \
  {BASE_URL}/public/aYYaFHiagqdXKEmVlmvJ/assist/sessions \
  -H 'content-type: application/json' \
  -H 'Authorization: Bearer {YOUR_ORGANIZATION_API_KEY}' \
  --data-raw '{
    "filters": [
      { "value": ["trial", "free"], "name": "METADATA", "source": "plan", "operator": "is" },
      { "value": ["openreplay"], "name": "userId", "operator": "contains" }
    ],
    "sort": "timestamp",
    "order": "desc",
    "limit": 10,
    "page": 1
  }'
{
  "data": {
    "total": 1,
    "sessions": [
      {
        "pageTitle": "OpenReplay Blog",
        "sessionID": "6975518573799185",
        "metadata": { "plan": "trial" },
        "userID": "dev@openreplay.com",
        "userUUID": "8998545b-553c-4f41-a39d-d7cba7fac2d1",
        "projectKey": "aYYaFHiagqdXKEmVlmvJ",
        "timestamp": 1656437966459,
        "trackerVersion": "3.5.11",
        "userOs": "Mac OS",
        "userBrowser": "Chrome",
        "userBrowserVersion": "103.0.0.0",
        "userDeviceType": "desktop",
        "userCountry": "FR",
        "live": true,
        "projectId": 3
      }
    ],
    "live": true
  }
}