Skip to main content

Populator - Environment Remove

Endpoint

/o/populator/environment/remove

Overview

Deletes one environment and its generated users.

Authentication

Pass api_key or auth_token as a query parameter, or send countly-token as a header. See Authentication.

Permissions

Requires Delete permission for the Populator feature.

Request Parameters

ParameterTypeRequiredDescription
app_idStringYesApp ID used for generated-user cleanup pattern.
template_idStringYesTemplate ID used for generated-user cleanup pattern.
environment_idStringYesEnvironment ID to remove.
api_keyStringConditionalRequired when auth_token is not provided.
auth_tokenStringConditionalRequired when api_key is not provided.

Examples

Remove one test environment

https://your-server.com/o/populator/environment/remove?
app_id=6991c75b024cb89cdc04efd2&
template_id=65f0cbf8bca6b8e8fbf7f901&
environment_id=3c7ffdf5b8200ee192968ad89dd4e180d5386c01&
api_key=YOUR_API_KEY

Response

Success Response

{
"result": true
}

Response Fields

FieldTypeDescription
resultBooleantrue when delete sequence succeeds.

Error Responses

401 Unauthorized

{
"result": "Missing parameter environment_id"
}

401 Unauthorized

{
"result": "Missing parameter template_id"
}

400 Bad Request

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

500 Internal Server Error

{
"result": "Database error: operation failed"
}

Behavior

Behavior Modes

ModeTriggerProcessing PathResponse Shape
Environment cascade deleteRequired params present and permissions grantedDeletes matching environment users, then deletes environment metadata.Raw root object: { "result": true }

Impact on Other Data

  • Deletes generated users from countly.populator_environment_users whose _id starts with app_id + '_' + template_id + '_' + environment_id.
  • Deletes matching environment metadata record in countly.populator_environments.

Operational Considerations

  • Deletion cost scales with the number of generated users in the target environment.
  • User deletion and environment deletion are separate operations and are not transactional.

Limitations

  • Endpoint does not return the number of deleted user rows.
  • Missing or wrong app_id can reduce cleanup scope of generated users because cleanup uses _id prefix matching.
Implementation details

Audit & System Logs

ActionTriggerPayload
populator_environment_removedDelete sequence succeeds{ environmentId, app_id, template_id }

Database Collections

CollectionUsed forData touched by this endpoint
countly.populator_environment_usersGenerated environment usersDeletes records by _id prefix match.
countly.populator_environmentsEnvironment metadataDeletes one environment document by _id.
countly.membersAuthentication and authorizationReads member context for permission checks.
countly.appsApp rights validationReads app access context from app_id.