Skip to main content

/o/plugins

Endpoint

/o/plugins

Overview

Returns available feature definitions by combining filesystem plugin metadata with current feature-state flags stored in the database.

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.

Response

Success Response

[
{
"enabled": true,
"code": "drill",
"title": "Drill",
"name": "drill",
"description": "Advanced event drill queries",
"version": "24.05.0",
"author": "Countly",
"homepage": "https://count.ly",
"cly_dependencies": {}
}
]

Response Fields

FieldTypeDescription
(root)ArrayRaw array of feature metadata objects.
[].enabledBooleanCurrent enabled state from stored feature flags.
[].codeStringFeature code (directory name).
[].titleStringDisplay title.
[].nameStringPackage name.
[].descriptionStringFeature description.
[].versionStringFeature version string.
[].authorStringFeature author metadata.
[].homepageStringFeature homepage metadata.
[].cly_dependenciesObjectFeature dependency metadata from package metadata.
[].prepackagedBooleanPresent in enclose builds when prepackaged metadata exists.

Error Responses

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

  • Reads _id: "plugins" state map from database.
  • Enumerates plugin directories and package metadata.
  • Builds response entries only for known plugin keys.
  • Adds localization fallback for disabled features when localization files are present. Localization file selection uses authenticated member language (params.member.lang) when available.
  • Returns metadata array as raw root output.

Database Collections

CollectionUsed forData touched by this endpoint
countly.membersGlobal-admin validationReads authenticated user and global-admin status.
countly.pluginsStores current feature enablement mapReads plugins.{feature_code} flags under _id: "plugins".

Examples

List all features and states

/o/plugins?api_key=YOUR_API_KEY

Limitations

  • No pagination/filter parameters; full list is returned.
  • Metadata quality depends on each feature's package/localization files.

Last Updated

2026-02-17