Skip to main content
Version: 24.05

Update segment status

Enterprise

This endpoint is part of Countly Enterprise. To get access, contact sales or compare versions. Existing customers can reach the support portal with questions.

Endpoint​

/i/data-manager/segment/toggle-status

Overview​

Sets status for one or more event segments.

Authentication​

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

Permissions​

Requires data_manager Update permission.

Request Parameters​

ParameterTypeRequiredDescription
app_idStringYesTarget app ID.
statusStringYesNew segment status.
eventSegmentsJSON String (Array)YesArray of { "event": "...", "segment": "..." } objects.
api_keyStringConditionalRequired if auth_token is not provided.
auth_tokenStringConditionalRequired if api_key is not provided.

eventSegments Array Structure​

Each array item defines one event-segment pair to update.

FieldTypeRequiredDescription
eventStringYesEvent key.
segmentStringYesSegment key under the event.

Decoded example:

[
{ "event": "purchase", "segment": "country" },
{ "event": "purchase", "segment": "price" }
]

Examples​

Set segments to live​

/i/data-manager/segment/toggle-status?
app_id=64f5c0d8f4f7ac0012ab3456&
status=live&
eventSegments=[
{"event":"purchase","segment":"country"},
{"event":"purchase","segment":"price"}
]

Set segments to unplanned​

/i/data-manager/segment/toggle-status?
app_id=64f5c0d8f4f7ac0012ab3456&
status=unplanned&
eventSegments=[
{"event":"purchase","segment":"country"}
]

Response​

Success Response​

"Success"

Response Fields​

FieldTypeDescription
(root value)StringSuccess when status updates are applied.

Error Responses​

  • 500
{
"result": "Error"
}

Behavior​

  • Updates segment status in countly_drill.drill_meta for each event+segment pair.
  • Updates parent event is_visible in countly.events using status visibility rules.
  • Writes dm-segment-edit system log entries.
  • Invalidates cache.

Operational Considerations​

  • Each segment update can also change parent event visibility, so one call may affect multiple event-map entries.
Implementation details

Configuration Impact

SettingDefaultAffectsUser-visible impact
data-manager.allowUnplannedEventsALLOWParent event visibility assignment when status=unplannedIf set to ALLOW, parent events can remain visible for unplanned segment status; if set to DISALLOW, parent visibility is forced hidden.

Audit & System Logs

ActionTriggerPayload
dm-segment-editPer-segment status update{ segment, ev, status }
dm-segment-editSummary log after all selected segments are processed{ ev: [eventKeys] }

Database Collections

CollectionUsed forData touched by this endpoint
countly_drill.drill_metaSegment status storageUpdates sg.{segment}.status for each requested event/segment pair.
countly.eventsParent event visibility mapUpdates map.{event}.is_visible based on the requested status and unplanned-event config.
countly.systemlogsAudit trailWrites per-segment and summary dm-segment-edit log entries.