Skip to main content

/i/userconfigs

Endpoint

/i/userconfigs

Overview

Updates user-level configuration overrides for the authenticated global admin user. The endpoint stores the provided overrides under member settings and returns user-scoped configuration values.

Authentication

Countly API supports three authentication methods:

  1. API Key (parameter): api_key=YOUR_API_KEY
  2. Auth Token (parameter): auth_token=YOUR_AUTH_TOKEN
  3. Auth Token (header): countly-token: YOUR_AUTH_TOKEN

Permissions

  • Required permission: Global Admin.

Request Parameters

ParameterTypeRequiredDescription
api_keyStringYes (or use auth_token)API key for authentication.
auth_tokenStringNoAuth token as query parameter or countly-token header.
configsJSON String (Object)YesJSON-stringified object of user-level setting overrides.

configs Object Structure

FieldTypeRequiredDescription
{namespace}ObjectYesConfiguration namespace for user override (for example frontend).
{namespace}.{setting}VariesYesUser-level value to store under member settings.

Example configs payload:

{
"frontend": {
"session_timeout": 15
}
}

Configuration Impact

SettingDefaultAffectsUser-visible impact
member.settings.{namespace}.{setting}No overrideResponse contentStored user-level overrides determine what values are returned in the user config response payload.

Response

Success Response

{
"frontend": {
"session_timeout": 15
}
}

Response Fields

FieldTypeDescription
(root)ObjectUser-level configuration map returned as raw root payload.
{namespace}ObjectNamespace containing user-scoped settings.
{namespace}.{setting}VariesUser-specific setting value.

Error Responses

400 Bad Request

{
"result": "Error updating configs"
}

400 Bad Request

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

400 Bad Request

{
"result": "Token not valid"
}

401 Unauthorized

{
"result": "User does not exist"
}

401 Unauthorized

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

401 Unauthorized

{
"result": "User is locked"
}

401 Unauthorized

{
"result": "Token is invalid"
}

Behavior/Processing

  • Parses configs as JSON; empty or invalid payload returns Error updating configs.
  • Merges submitted values into the authenticated member's settings object.
  • If frontend.session_timeout is provided, updates TTL/expiry fields in the authenticated user's active login tokens.
  • Returns user-scoped config values after update flow.

Impact on Other Data

  • Updates settings.* fields on the authenticated user document in countly.members.
  • May update token expiry metadata in countly.auth_tokens.

Database Collections

CollectionUsed forData touched by this endpoint
countly.membersStores dashboard user profile and settingsUpdates authenticated user's settings.{namespace}.{setting} values.
countly.auth_tokensStores active dashboard auth tokensUpdates ttl and ends for authenticated user's LoggedInAuth tokens when session timeout is provided.

Examples

Set user-level frontend session timeout

/i/userconfigs?api_key=YOUR_API_KEY&configs={"frontend":{"session_timeout":15}}

Set multiple user-level frontend preferences

/i/userconfigs?api_key=YOUR_API_KEY&configs={"frontend":{"session_timeout":20,"table_rows":50}}

Limitations

  • This endpoint updates the authenticated global admin user only.
  • Invalid JSON input is treated as an empty update and returns Error updating configs.

Last Updated

2026-02-17