Skip to main content

Events

Overview

Events help you keep track of changes across your Unleash instance. You can explore events in Event Log or using the global Event Timeline.

The Event Log provides a full list of all events, whereas the Event Timeline offers a highlight of recent key events and Signals from external sources. You can use Event Log for auditing purposes, while Event Timeline is particularly helpful for debugging recent changes and their impact.

Event Log

The Event Log lists all events in your Unleash instance. You can search and filter events by date range, event type, project, feature flag, and user. You can also export events as CSV or JSON files.

To access events in the Admin UI, you need Admin access. To view all events, go to Admin > Event log. To view events for a specific feature flag, go to the Event log tab on that feature flag's page.

Each event type contains different data, but all events follow the same schema:

FieldTypeDescription
id*numberUnique identifier for the event; incremental whole number.
type*stringDescribes the type of event (e.g., feature-strategy-update).
createdAt*stringTimestamp when the event was created; ISO 8601 format.
createdBy*stringEmail of the user who triggered the event.
createdByUserIdnumberUnique identifier of the user who triggered the event.
dataobjectDetails about the event (e.g., feature strategy, API token data).
preDataobjectPrevious state before the event.
tagsarrayArray of tags associated with the event.
featureNamestringName of the feature flag associated with the event.
projectstringName of the project involved in the event.
environmentstringEnvironment related to the event (e.g., development).
labelstringBrief description of the event.
summarystringMarkdown formatted summary of the event.

Fields marked with an asterisk (*) are always returned in the event schema. Other fields may be optional or have null values, depending on the event type.

See the feature-created event type for an example event.

Event Timeline

Availability

Plan: Enterprise | Version: 6.3+ in BETA

Event Timeline highlights recent events across all your projects in one unified timeline. You can access the timeline from the top menu in the Admin UI.

Event timeline in Unleash Admin UI

The timeline shows key events and signals for up to 48 hours per environment and is designed to help you get an overview of changes and quickly identify and debug any issues. You can switch between different time spans to focus on recent activity. Although you can filter events by environment, the timeline also shows environment-agnostic events, such as archiving a feature flag.

You can enable or disable the timeline view at any time based on your preferences. Events that occur close together in time are automatically grouped, but hovering over an event group shows detailed information about the specific events.

Event types

Feature flag events

Events related to feature flags and their life cycle.

feature-created

Generated when you create a feature flag. The data property contains the details for the new feature flag.

{
"id": 27332,
"type": "feature-created",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"name": "test-flag",
"description": null,
"type": "release",
"project": "test-project",
"stale": false,
"createdAt": "2024-10-03T11:09:53.201Z",
"lastSeenAt": null,
"impressionData": false,
"archivedAt": null,
"archived": false
},
"preData": null,
"tags": [],
"featureName": "test-flag",
"project": "test-project",
"environment": null,
"label": "Flag created",
"summary": "**user@getunleash.io** created **test-flag** in ... "
}

feature-deleted

Generated when you delete a feature flag. The preData property contains the deleted feature flag data.

feature-archived

Generated when you archive a feature flag. preData and data are null.

feature-revived

Generated when you revive an archived feature flag. preData and data are null.

feature-metadata-updated

Generated when a feature flag's metadata, such as description, flag type, or impression data settings, are changed. The data property contains the new flag data. The preData property contains the flag's previous data.

feature-project-change

Generated when you move a feature flag from one project to another. The data property contains the names of the old and the new project.

{
"id": 27332,
"type": "feature-project-change",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"newProject": "test-project",
"oldProject": "old-test-project"
},
"preData": null,
"tags": [],
"featureName": "test-flag",
"project": "test-project",
"environment": null,
"label": "Flag moved to a new project",
"summary": "**user@getunleash.io** moved **test-flag** from ... "
}

feature-import

Generated when you import a feature flag as part of an import process. The data property contains the feature flag data. See feature-created for an example.

feature-tagged

Generated when you add a tag to a feature flag. The data property contains the new tag.

{
"id": 27333,
"type": "feature-tagged",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"type": "simple",
"value": "tag2"
},
"preData": null,
"tags": [
{
"type": "simple",
"value": "tag2"
}
],
"featureName": "test-flag",
"project": "test-project",
"environment": null,
"label": "Flag tagged",
"summary": "**user@getunleash.io** tagged **test-flag** with ... "
}

feature-untagged

Generated when you remove a tag from a feature flag. The data property contains the tag that was removed. See feature-tagged for an example.

feature-tag-import

Generated when you import a tagged feature flag as part of an import job. The data property contains the name of the feature and the tag.

{
"id": 27334,
"type": "feature-tag-import",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"featureName": "new-feature",
"tag": {
"type": "simple",
"value": "tag1"
}
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null,
"label": null,
"summary": null
}

feature-strategy-add

Generated when you add a strategy to a feature flag. The data property contains the configuration for the new strategy.

{
"id": 27335,
"type": "feature-strategy-add",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"id": "3f4bf713-696c-43a4-8ce7-d6c607108858",
"name": "flexibleRollout",
"title": null,
"disabled": false,
"parameters": {
"groupId": "new-feature",
"rollout": "67",
"stickiness": "default"
},
"variants": [],
"sortOrder": 0,
"segments": []
},
"preData": null,
"tags": [],
"featureName": "new-feature",
"project": "my-other-project",
"environment": "default",
"label": "Flag strategy added",
"summary": "**user@getunleash.io** added strategy"
}

feature-strategy-update

Generated when you update a feature flag strategy. The data property contains the new strategy configuration. The preData property contains the previous strategy configuration.

feature-strategy-remove

Generated when you remove a strategy from a feature flag. The preData contains the configuration of the strategy that was removed.

feature-stale-on

Generated when you mark a feature flag as stale. preData and data are null.

feature-stale-off

Generated when you mark a stale feature flag as no longer stale. preData and data are null.

feature-environment-enabled

Generated when you enable an environment for a feature flag. The environment property contains the name of the environment, preData and data are null.

feature-environment-disabled

Generated when you disable an environment for a feature. The environment property contains the name of the environment. preData and data are null.

drop-features

Generated when you delete existing features as part of an import job. The data.name property is "all-features".

{
"id": 27336,
"type": "drop-features",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"name": "all-features"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

drop-feature-tags

Generated when you drop all existing tags as part of a configuration import. The data.name is "all-feature-tags". See drop-features for an example.

feature-potentially-stale-on

Generated when Unleash marks a feature flag as potentially stale due to exceeding the expected lifetime of its feature flag type. preData and data are null.

feature-updated

Deprecated functionality

Deprecated in Unleash 4.3. Use more granular events, such as feature-strategy-update, instead.

Strategy events

strategy-created

Generated when you create a strategy. The data property contains the strategy configuration.

{
"id": 273357,
"type": "strategy-created",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"name": "new-strategy",
"description": "this strategy does ...",
"parameters": [],
"editable": true,
"deprecated": false
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null,
"label": "strategy-created",
"summary": "**user@getunleash.io** triggered **strategy-created**"
}

strategy-updated

Generated when you change a strategy's configuration. The data property contains the new strategy configuration. See strategy-created for an example.

strategy-deleted

Generated when you delete a strategy. The data property contains the name of the deleted strategy, preData is null.

strategy-deprecated

Generated when you deprecate a strategy. The data property contains the name of the deprecated strategy, preData is null.

strategy-reactivated

Generated when you reactivate a deprecated strategy. The data property contains the name of the reactivated strategy, preData is null.

strategy-import

Generated when you import a strategy as part of an import job. The data property contains the strategy's configuration, preData is null. See strategy-created for an example.

drop-strategies

Generated when you delete existing strategies as part of an import job. The data.name property is "all-strategies".

{
"id": 27338,
"type": "drop-strategies",
"createdBy": "import-API-token",
"createdAt": "2022-06-03T11:30:40.579Z",
"data": {
"name": "all-strategies"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

Context field events

context-field-created

Generated when you create a context field. The data property contains the context field configuration.

{
"id": 27339,
"type": "context-field-created",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"name": "new-context-field",
"description": "this context field is for describing events",
"legalValues": [],
"stickiness": false
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null,
"label": "Context field created",
"summary": "**user@getunleash.io** created context field **new-context-field**"
}

context-field-updated

Generated when you update a context field. The data property contains the new context field configuration. See context-field-created for an example.

context-field-deleted

Generated when you delete a context field. The data property contains the name of the deleted context field.

Project events

project-created

Generated when you create a project. The data property contains the project configuration.

{
"id": 27340,
"type": "project-created",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"id": "my-other-project",
"name": "my other project",
"description": "a project for important work",
"defaultStickiness": "default",
"mode": "private",
"changeRequestEnvironments": []
},
"preData": null,
"tags": [],
"featureName": null,
"project": "my-other-project",
"environment": null,
"label": "Project created",
"summary": "**user@getunleash.io** created project **my-other-project** ..."
}

project-updated

Generated when you update a project's configuration. The data property contains the new project configuration. The preData property contains the previous project configuration.

project-deleted

Generated when you delete a project. The project property contains the name of the deleted project.

project-import

Generated when you import a project. The data property contains the project's configuration details. See project-created for an example.

drop-projects

Generated when you delete existing projects as part of an import job. The data.name property is "all-projects".

Tag events

tag-created

Generated when you create a new tag. The data property contains the tag that was created.

{
"id": 27341,
"type": "tag-created",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"type": "6.1.0",
"value": "release"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null,
"label": "tag-created",
"summary": "**user@getunleash.io** triggered **tag-created**"
}

tag-deleted

Generated when you delete a tag. The data property contains the tag that was deleted. See tag-created for an example.

tag-import

Generated when you import a tag as part of an import job. The data property contains the imported tag. See tag-created for an example.

drop-tags

Generated when you delete existing tags as part of an import job. The data.name property is "all-tags".

{
"id": 27342,
"type": "drop-tags",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"name": "all-tags"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null,
"label": "drop-tags",
"summary": "**user@getunleash.io** triggered **drop-tags**"
}

Tag type events

tag-type-created

Generated when you create a new tag type. The data property contains the tag type configuration.

{
"id": 27343,
"type": "tag-type-created",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"name": "new-tag-type",
"description": "event testing"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null,
"label": "tag-type-created",
"summary": "**user@getunleash.io** triggered **tag-type-created**"
}

tag-type-updated

Generated when you update a tag type. The data property contains the new tag type configuration. See tag-type-created for an example.

tag-type-deleted

Generated when you delete a tag type. The data property contains the name of the deleted tag type.

tag-type-import

Generated when you import a tag type as part of an import job. The data property contains the imported tag. See tag-type-created for an example.

drop-tag-types

Generated when you drop all existing tag types as part of a configuration import. The data.name property is "all-tag-types".

Integration events

addon-config-created

Generated when you create an integration configuration. The data property contains the provider type.

{
"id": 27343,
"type": "addon-config-created",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"id": 14,
"provider": "webhook",
"enabled": true,
"description": "Test Webhooks",
"events": [
"feature-updated"
],
"projects": [
"test-project"
],
"environments": [
"production"
]
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null,
"label": "Integration configuration created",
"summary": "**user@getunleash.io** created a new **webhook** integration configuration"
}

addon-config-updated

Generated when you update an integration configuration. The data property contains the id and provider of the integration.

addon-config-deleted

Generated when you delete an integration configuration. The data property contains the id of the integration.

User events

user-created

Generated when you create a new user. The data property contains the user's information.

{
"id": 27344,
"type": "user-created",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"id": 111,
"name": "New User Name",
"email": "newuser@getunleash.io",
"rootRole": 2
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null,
"label": "User created",
"summary": "**user@getunleash.io** created user **New User Name**"
}

user-updated

Generated when you update a user. The data property contains the updated user information; the preData property contains the previous state of the user's information.

user-deleted

Generated when you delete a user. The preData property contains the deleted user's information.

Environment events

environment-import

Generated when you import an environment as part of an import job. The data property contains the configuration of the imported environment.

{
"id": 27345,
"type": "environment-import",
"createdBy": "import-API-token",
"createdAt": "2022-06-03T11:30:40.557Z",
"data": {
"name": "custom-environment",
"type": "test",
"sortOrder": 9999,
"enabled": true,
"protected": false
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

drop-environments

Generated when you delete existing environments as part of an import job. The data.name property is "all-environments".

Segment events

segment-created

Generated when you create a segment. The data property contains the newly created segment.

{
"id": 27346,
"type": "segment-created",
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z",
"createdByUserId": 110,
"data": {
"id": 5,
"name": "new segment",
"description": "this segment is for events",
"project": "development",
"constraints": [
{
"values": ["appA", "appB", "appC"],
"inverted": false,
"operator": "IN",
"contextName": "appName",
"caseInsensitive": false
}
],
"createdBy": "user@getunleash.io",
"createdAt": "2024-10-03T11:09:53.225Z"
},
"preData": null,
"tags": [],
"featureName": null,
"project": "development",
"environment": null,
"label": "Segment created",
"summary": "**user@getunleash.io** created segment **new segment**"
}

segment-updated

Generated when you update a segment's configuration. The data property contains the new segment configuration; the preData property contains the previous segment configuration.

segment-deleted

Generated when you delete a segment. preData property contains the deleted segment.