Skip to main content

/o/slipping

Endpoint

/o/slipping

Overview

Returns slipping-away user metrics for configured inactivity periods. Each row includes period length, user count, percentage, and threshold timestamp.

Authentication

Countly API supports three authentication methods:

  1. API key query parameter: api_key=YOUR_API_KEY
  2. Auth token query parameter: auth_token=YOUR_AUTH_TOKEN
  3. Auth token header: countly-token: YOUR_AUTH_TOKEN

Permissions

  • Required permission: slipping_away_users Read.

Request Parameters

ParameterTypeRequiredDescription
api_keyStringYes (or use auth_token)API key for authentication.
auth_tokenStringNoAuth token as query parameter or countly-token header.
app_idStringYesTarget app ID.
queryJSON String (Object) or ObjectNoOptional filter merged into user query before counting.

Example query:

{
"country": "US",
"custom.premium": true
}

Parameter Semantics

  • query can be sent as JSON string or object.
  • If cohorts feature is enabled, cohort filters are preprocessed and merged into query.
  • Invalid JSON in query is not rejected by this handler; request continues and can produce empty or unexpected counts.

Configuration Impact

SettingDefaultAffectsUser-visible impact
slipping-away-users.p17Period thresholdsFirst output row uses this inactivity threshold (days).
slipping-away-users.p214Period thresholdsSecond output row uses this inactivity threshold (days).
slipping-away-users.p330Period thresholdsThird output row uses this inactivity threshold (days).
slipping-away-users.p460Period thresholdsFourth output row uses this inactivity threshold (days).
slipping-away-users.p590Period thresholdsFifth output row uses this inactivity threshold (days).

Response

Success Response

[
{
"period": 7,
"count": 245,
"percentage": "12.50",
"timeStamp": 1707609600
},
{
"period": 14,
"count": 412,
"percentage": "21.00",
"timeStamp": 1707004800
},
{
"period": 30,
"count": 680,
"percentage": "34.69",
"timeStamp": 1705622400
},
{
"period": 60,
"count": 890,
"percentage": "45.38",
"timeStamp": 1703030400
},
{
"period": 90,
"count": 1050,
"percentage": "53.57",
"timeStamp": 1700438400
}
]

Response Fields

FieldTypeDescription
[]ArraySlipping-away rows for configured inactivity periods.
[].periodNumberInactivity threshold in days.
[].countNumberUser count matching lac < threshold.
[].percentageStringPercentage of matching users vs total users (2 decimals).
[].timeStampNumberUTC Unix timestamp for threshold boundary.

Error Responses

400 Bad Request

{
"result": "Missing parameter \"api_key\" or \"auth_token\""
}

401 Unauthorized

{
"result": "User does not have right"
}

Behavior/Processing

Behavior Modes

ModeTriggerProcessing PathResponse Shape
Base slipping metricsquery is omittedCounts users in app_users{appId} for each configured inactivity threshold and total users.Raw root array of period rows.
Filtered slipping metricsquery is providedMerges query into each threshold condition before counting.Raw root array of period rows.
Cohort-aware filteringCohorts feature is enabled and query includes cohort criteriaPreprocesses cohort query first, then runs filtered counting logic.Raw root array of period rows.

Impact on Other Data

  • Read-only endpoint.

Database Collections

CollectionUsed forData touched by this endpoint
countly.membersAuthentication and permission validationReads member record by api_key or auth_token to verify read access.
countly.appsApp context validationReads app record for the requested app_id during access validation.
countly.app_users{appId}Inactivity analysis sourceCounts users by lac threshold and optional query filters.

Examples

Read slipping metrics for all users

/o/slipping?
api_key=YOUR_API_KEY&
app_id=6991c75b024cb89cdc04efd2

Read slipping metrics filtered by user properties

/o/slipping?
api_key=YOUR_API_KEY&
app_id=6991c75b024cb89cdc04efd2&
query={"country":"US","custom.premium":true}

Limitations

  • Endpoint executes one count query per configured threshold plus one total-user count query.
  • Very broad or unindexed query filters can increase response time.

Last Updated

2026-02-17