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.

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.
createdByUserId*numberUnique 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 event 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.

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-created",
"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 created",
"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.

example event: feature-strategy-add
{
"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".

example event: drop-features
{
"id": 25,
"type": "drop-features",
"createdBy": "import-API-token",
"createdAt": "2022-06-03T11:30:40.563Z",
"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": 932,
"type": "strategy-created",
"createdBy": "user@company.com",
"createdAt": "2022-06-02T12:20:52.111Z",
"data": {
"name": "new-strategy",
"description": "this strategy does ...",
"parameters": [],
"editable": true,
"deprecated": false
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

strategy-updated

Generated when you change a strategy's configuration. The data property contains the new strategy configuration. See startegy-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 bring 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 will is "all-strategies".

example event: drop-strategies
{
"id": 28,
"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.

example event: context-field-created
{
"id": 937,
"type": "context-field-created",
"createdBy": "user@company.com",
"createdAt": "2022-06-02T13:17:17.499Z",
"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
}

context-field-updated

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

example event: context-field-updated
{
"id": 939,
"type": "context-field-updated",
"createdBy": "user@company.com",
"createdAt": "2022-06-02T13:19:19.422Z",
"data": {
"name": "new-context-field",
"description": "this context field is for describing events",
"legalValues": [
{
"value": "0fcf7d07-276c-41e1-a207-e62876d9c949",
"description": "Red team"
},
{
"value": "176ab647-4d50-41bf-afe0-f8b856d9bbb9",
"description": "Blue team"
}
],
"stickiness": false
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

context-field-deleted

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

example event: context-field-deleted
{
"id": 940,
"type": "context-field-deleted",
"createdBy": "user@company.com",
"createdAt": "2022-06-02T13:20:41.386Z",
"data": {
"name": "new-context-field"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

Project events

project-created

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

example event: project-created
{
"id": 905,
"type": "project-created",
"createdBy": "user@company.com",
"createdAt": "2022-05-31T14:16:14.498Z",
"data": {
"id": "my-other-project",
"name": "my other project",
"description": "a project for important work"
},
"preData": null,
"tags": [],
"featureName": null,
"project": "my-other-project",
"environment": null
}

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.

example event: project-updated
{
"id": 941,
"type": "project-updated",
"createdBy": "user@company.com",
"createdAt": "2022-06-02T13:23:55.025Z",
"data": {
"id": "my-other-project",
"name": "my other project",
"description": "a project for important work!"
},
"preData": {
"id": "my-other-project",
"name": "my other project",
"health": 50,
"createdAt": "2022-05-31T14:16:14.483Z",
"updatedAt": "2022-06-02T12:30:48.095Z",
"description": "a project for important work"
},
"tags": [],
"featureName": null,
"project": "my-other-project",
"environment": null
}

project-deleted

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

example event: project-deleted
{
"id": 944,
"type": "project-deleted",
"createdBy": "user@company.com",
"createdAt": "2022-06-02T13:25:53.820Z",
"data": null,
"preData": null,
"tags": [],
"featureName": null,
"project": "my-other-project",
"environment": null
}

project-import

Generated when you import a project. The data property contains the project's configuration details.

example event: project-import
{
"id": 35,
"type": "project-import",
"createdBy": "import-API-token",
"createdAt": "2022-06-03T11:30:40.591Z",
"data": {
"id": "default",
"name": "Default",
"description": "Default project",
"createdAt": "2022-06-03T09:30:40.587Z",
"health": 100,
"updatedAt": "2022-06-03T11:30:40.587Z"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

drop-projects

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

example event: drop-projects
{
"id": 33,
"type": "drop-projects",
"createdBy": "import-API-token",
"createdAt": "2022-06-03T11:30:40.586Z",
"data": {
"name": "all-projects"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

Tag events

tag-created

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

example event: tag-created
{
"id": 959,
"type": "tag-created",
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:13:39.401Z",
"data": {
"type": "heartag",
"value": "tag-value"
},
"preData": null,
"tags": [],
"featureName": "new-feature",
"project": null,
"environment": null
}

tag-deleted

Generated when you delete a tag. The data property contains the tag that was deleted.

example event: tag-deleted
{
"id": 957,
"type": "tag-deleted",
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:12:17.310Z",
"data": {
"type": "heartag",
"value": "tag-value"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

tag-import

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

example event: tag-import
{
"id": 41,
"type": "tag-import",
"createdBy": "import-API-token",
"createdAt": "2022-06-03T11:30:40.603Z",
"data": {
"type": "simple",
"value": "tag1"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

drop-tags

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

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

Tag type events

tag-type-created

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

example event: tag-type-created
{
"id": 945,
"type": "tag-type-created",
"createdBy": "user@company.com",
"createdAt": "2022-06-02T13:27:01.235Z",
"data": {
"name": "new-tag-type",
"description": "event testing"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

tag-type-updated

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

example event: tag-type-updated
{
"id": 946,
"type": "tag-type-updated",
"createdBy": "user@company.com",
"createdAt": "2022-06-02T13:27:31.126Z",
"data": {
"name": "new-tag-type",
"description": "This tag is for testing events."
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

tag-type-deleted

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

example event: tag-type-deleted
{
"id": 947,
"type": "tag-type-deleted",
"createdBy": "user@company.com",
"createdAt": "2022-06-02T13:27:37.277Z",
"data": {
"name": "new-tag-type"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

tag-type-import

Generated when you import a tag type as part of an import job. The data property contains the imported tag.

example event: tag-type-import
{
"id": 40,
"type": "tag-type-import",
"createdBy": "import-API-token",
"createdAt": "2022-06-03T11:30:40.599Z",
"data": {
"name": "custom-tag-type",
"description": "custom tag type",
"icon": null
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

drop-tag-types

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

example event: drop-tag-types
{
"id": 38,
"type": "drop-tag-types",
"createdBy": "import-API-token",
"createdAt": "2022-06-03T11:30:40.596Z",
"data": {
"name": "all-tag-types"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

Integration events

addon-config-created

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

example event: addon-config-created
{
"id": 960,
"type": "addon-config-created",
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:15:45.040Z",
"data": {
"provider": "webhook"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

addon-config-updated

Generated when you update an integration configuration. The data property contains the integration's ID and provider type.

example event: addon-config-updated
{
"id": 961,
"type": "addon-config-updated",
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:16:11.732Z",
"data": {
"id": "2",
"provider": "webhook"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

addon-config-deleted

Generated when you update an integration configuration. The data property contains the integration's ID.

example event: addon-config-deleted
{
"id": 964,
"type": "addon-config-deleted",
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:16:59.723Z",
"data": {
"id": "2"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

User events

user-created

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

example event: user-created
{
"id": 965,
"type": "user-created",
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:23:47.713Z",
"data": {
"id": 44,
"name": "New User Name",
"email": "newuser@company.com"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

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.

example event: user-updated
{
"id": 967,
"type": "user-updated",
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:24:26.301Z",
"data": {
"id": 44,
"name": "New User's Name",
"email": "newuser@company.com"
},
"preData": {
"id": 44,
"name": "New User Name",
"email": "newuser@company.com"
},
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

user-deleted

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

example event: user-deleted
{
"id": 968,
"type": "user-deleted",
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:24:49.153Z",
"data": null,
"preData": {
"id": 44,
"name": "New User's Name",
"email": "newuser@company.com"
},
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

Environment events

environment-import

Generated when you import an environment (custom or otherwise) as part of an import job. The data property contains the configuration of the imported environment.

example event: environment-import
{
"id": 24,
"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 will always be "all-environments".

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

Segment events

segment-created

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

example event: segment-created
{
"id": 969,
"type": "segment-created",
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:29:43.977Z",
"data": {
"id": 5,
"name": "new segment",
"description": "this segment is for events",
"constraints": [
{
"values": ["appA", "appB", "appC"],
"inverted": false,
"operator": "IN",
"contextName": "appName",
"caseInsensitive": false
}
],
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:29:43.974Z"
},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

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.

example event: segment-updated
{
"id": 970,
"type": "segment-updated",
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:29:59.892Z",
"data": {
"id": 5,
"name": "new segment",
"description": "this segment is for events",
"constraints": [],
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:29:43.974Z"
},
"preData": {
"id": 5,
"name": "new segment",
"createdAt": "2022-06-03T10:29:43.974Z",
"createdBy": "user@company.com",
"constraints": [
{
"values": ["appA", "appB", "appC"],
"inverted": false,
"operator": "IN",
"contextName": "appName",
"caseInsensitive": false
}
],
"description": "this segment is for events"
},
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

segment-deleted

Generated when you delete a segment.

example event: segment-deleted
{
"id": 971,
"type": "segment-deleted",
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:30:08.128Z",
"data": {},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}

Suggest changes events

suggest-change-created

Generated when you create a change-request draft.

example event: suggest-change-created
{
"id": 971,
"type": "suggest-change-created",
"createdBy": "user@company.com",
"createdAt": "2022-06-03T10:30:08.128Z",
"data": {},
"preData": null,
"tags": [],
"featureName": null,
"project": null,
"environment": null
}