Skip to main content

Event types and filters

This topic lists the types of events supported for the Event Notifications feature. For more information about the Event Notifications feature, see About event notifications.

Channel events​

Channel Created​

When a new channel is created for an application.

Filters​

FilterJSON keyRequiredDescription
ApplicationappIdNoFilter to a specific application

JSON definition​

{ "eventType": "channel.created", "filters": {} }

Channel Archived​

When a channel is archived.

Filters​

FilterJSON keyRequiredDescription
ApplicationappIdNoFilter to a specific application
ChannelchannelIdNoFilter to one or more specific channels

JSON definition​

{ "eventType": "channel.archived", "filters": { "channelId": ["channel1a2b3c4d"] } }

Customer events​

Customer Created​

When a new customer is created.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
Expiration StatusexpirationStatusNoactive, expiring_soon, perpetual

JSON definition​

{ "eventType": "customer.created", "filters": { "licenseType": ["paid", "trial"] } }

Customer Updated​

When a customer's details or license is updated.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application
Change TypechangeTypeNocustomer_name, license_type, expiration, channel, install_options, helm_email, entitlement

JSON definition​

{ "eventType": "customer.updated", "filters": { "changeType": ["license_type", "expiration"] } }

Customer Archived​

When a customer is archived.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application

JSON definition​

{ "eventType": "customer.archived", "filters": {} }

Customer Unarchived (Restored)​

When a customer is restored from archived state.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application

JSON definition​

{ "eventType": "customer.unarchived", "filters": {} }

Customer License Expiring​

Time-based warning of an upcoming license expiration.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application
Days Until ExpirydaysUntilExpiryNo0, 1, 7, 14, 30, 60, 90

JSON definition​

{ "eventType": "customer.license_expiring", "filters": { "daysUntilExpiry": ["7", "30"] } }

Pending Self-Service Signup​

When someone signs up via the self-service portal (if enabled).

Filters​

FilterJSON keyRequiredDescription
ApplicationappIdNoFilter to a specific application

JSON definition​

{ "eventType": "customer.pending_signup", "filters": {} }

Enterprise Portal Invite Sent​

When a vendor sends an Enterprise Portal invite to a user.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
CustomercustomerIdNoAny customer for the selected application
License TypelicenseTypeNopaid, trial, community, dev

JSON definition​

{ "eventType": "customer.ep_invite_sent", "filters": {} }

Enterprise Portal Access Granted​

When a user accesses the Enterprise Portal.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
CustomercustomerIdNoAny customer for the selected application
Access MethodaccessMethodNoinvite, self_signup, saml_jit
License TypelicenseTypeNopaid, trial, community, dev
Access TypeaccessTypeNo
  • any (default): Triggers a notification every time a user accesses the Enterprise Portal.
  • first_for_license_type: Triggers a notification the first time that a customer with a specific license type accesses the Enterprise Portal. For example, if you select "Paid" for the License Type filter, then you will receive a notification the first time that a customer with a Paid license access the Enterprise Portal, even if they previously logged in when they had a Trial license.

First Access for Selected License Type only tracks Enterprise Portal access events that occur after March 27, 2026.

JSON definition​

{
"eventType": "customer.ep_access_granted",
"filters": {
"licenseType": ["paid"],
"accessType": "first_for_license_type"
}
}

Enterprise Portal User Joined​

When a user joins an Enterprise Portal customer.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
CustomercustomerIdNoAny customer for the selected application
Access MethodaccessMethodNoinvite, self_signup, saml_jit
License TypelicenseTypeNopaid, trial, community, dev

JSON definition​

{ "eventType": "customer.ep_user_joined", "filters": {} }

Instance events​

note

Instance event notifications use the Instance Name if set. Otherwise, they use the Instance ID.

Instance Created​

When a new instance sends its first check-in.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application

JSON definition​

{ "eventType": "instance.created", "filters": {} }

Instance Ready​

When a new instance's application status is Ready for the first time.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application

JSON definition​

{ "eventType": "instance.ready", "filters": {} }

Instance Upgrade Started​

When an instance begins upgrading to a new release version. This event fires when the Vendor Portal receives the first telemetry with a new release version, whether or not the application status is Ready.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application

JSON definition​

{ "eventType": "instance.upgrade_started", "filters": {} }

Instance Upgrade Completed​

When an instance's application status is Ready after upgrading to a new release version.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application

JSON definition​

{ "eventType": "instance.upgrade_completed", "filters": {} }

Instance Version Behind​

When an instance falls behind by a specified number of versions.

Filters​

FilterJSON keyRequiredDescription
Versions BehindversionsBehindYesMinimum number of versions behind to trigger the notification. Provide as a string (for example, "3").
ApplicationappIdNoAny application in your account
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application

JSON definition​

{ "eventType": "instance.version_behind", "filters": { "versionsBehind": "3" } }

Instance Inactive​

When an instance has not checked-in for 24 hours (declared "Inactive"). Air-gapped instances are excluded from this event type.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application

JSON definition​

{ "eventType": "instance.inactive", "filters": {} }

Instance State Duration​

When an instance has been in a specific state (such as Unavailable or Degraded) for a specified duration.

The Instance State Duration event type requires you to specify the target state and duration threshold. Only one Instance State Duration event is allowed per subscription.

FilterJSON keyRequiredOptions
StatestateYesready, unavailable, degraded, updating, missing
Duration (minutes)durationMinutesYes"5", "10", "15", "30", "60", "120", "240", "480", "1440"
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application

The state filter accepts one or more values as an array. The durationMinutes value must be provided as a string. The notification triggers when an instance has been in the specified state for at least the configured duration. If the instance recovers and later re-enters the monitored state, the notification can trigger again after the duration threshold is met.

JSON definition​

{
"eventType": "instance.state.duration",
"filters": {
"state": ["unavailable", "degraded"],
"durationMinutes": "60"
}
}

Instance State Flapping​

When an instance is changing states frequently within a configured time window.

The Instance State Flapping event type requires you to specify the sensitivity of flapping detection:

FilterJSON keyRequiredOptions
Minimum State ChangesminStateChangesYes"3", "5", "10", "15", "20"
Time Window (minutes)windowMinutesYes"30", "60", "120"
Cooldown Period (minutes)cooldownMinutesNo"15", "30", "60", "120", "1440" (default: "60")
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application

The numeric filter values (minStateChanges, windowMinutes, cooldownMinutes) must be provided as strings. The notification triggers when an instance accumulates the specified number of state changes within the time window. The cooldown period prevents repeated notifications for the same instance within the configured interval.

JSON definition​

{
"eventType": "instance.state.flapping",
"filters": {
"minStateChanges": "5",
"windowMinutes": "60",
"cooldownMinutes": "60"
}
}

Custom Metric Threshold Reached​

When a custom metric value reported by an instance meets a configured threshold condition.

The Custom Metric Threshold Reached event type requires a metric name, comparison operator, and notification frequency. You can include only one Custom Metric Threshold Reached event per subscription.

Filters​

FilterJSON keyRequiredDescription
Metric NamemetricNameYesThe name of the custom metric to monitor
OperatoroperatorYesComparison operator. The operators available depend on the metric type. For more information, see Available operators.
Threshold ValuethresholdValueConditionalRequired for all operators except is_true, is_false, exists, and not_exists. Provide as a string.
FrequencyfrequencyYesControls how often you receive the notification. For more information, see Frequency options.
ApplicationappIdNoAny application in your account
CustomercustomerIdNoAny customer for the selected application

Available operators​

The available operators depend on the type of metric value:

Metric TypeAvailable operators (JSON value)
Numbergt (greater than), gte (greater than or equal), lt (less than), lte (less than or equal), eq (equals), neq (does not equal), exists, not_exists
Booleanis_true, is_false, eq (equals), neq (does not equal), exists, not_exists
Stringcontains, starts_with, ends_with, eq (equals), neq (does not equal), exists, not_exists

Frequency options​

The following frequency options control how often the notification triggers:

FrequencyJSON valueBehavior
Send OnceonceNotifies the first time the metric meets the threshold. Does not notify again until the condition clears and the metric meets the threshold again.
When Changedwhen_changedNotifies when the metric meets the threshold and its value has changed since the last notification.
Each Timeeach_timeNotifies every time a metric report meets the threshold condition.

JSON definition​

{
"eventType": "instance.custom_metric_threshold_reached",
"filters": {
"metricName": "error_rate",
"operator": "gt",
"thresholdValue": "0.05",
"frequency": "when_changed"
}
}

Platform events​

Platform events are account-level events that are not scoped to a single application instance, customer, release, or channel.

Egress Threshold Reached​

When monthly registry egress for the team reaches a configured threshold.

The Egress Threshold Reached event evaluates the current calendar month's registry egress for the team. When the total reaches or exceeds the configured threshold, Replicated sends one notification for the subscription, threshold, and month. The notification can fire again in a later month, or if the threshold configuration is changed.

Filters​

FilterJSON keyRequiredDescription
Threshold (TiB)thresholdTiBYesMonthly registry egress threshold in tebibytes. Provide as a string, for example "5" or "5.5".

JSON definition​

{
"eventType": "platform.egress_threshold_reached",
"filters": {
"thresholdTiB": "5"
}
}

Release events​

Release Created​

When a new release is created.

Filters​

FilterJSON keyRequiredDescription
ApplicationappIdNoFilter to a specific application

JSON definition​

{ "eventType": "release.created", "filters": {} }

Release Promoted​

When a release is promoted to a channel.

Filters​

FilterJSON keyRequiredDescription
ApplicationappIdNoFilter to a specific application
ChannelchannelIdNoFilter to one or more channels

JSON definition​

{ "eventType": "release.promoted", "filters": { "channelId": ["channel1a2b3c4d"] } }

Release Demoted (Unpublished)​

When a release is demoted from a channel.

Filters​

FilterJSON keyRequiredDescription
ApplicationappIdNoFilter to a specific application
ChannelchannelIdNoFilter to one or more channels

JSON definition​

{ "eventType": "release.unpublished", "filters": {} }

Release Build Failed​

When a release build fails for a release on a channel.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
ChannelchannelIdNoAny channel for the selected application

JSON definition​

{ "eventType": "release.build_failed", "filters": { "appId": "app1a2b3c4d" } }

Release Assets Downloaded​

When a customer pulls a release asset (Helm chart, Embedded Cluster bundle, or proxy registry image). Each individual asset pull triggers one Release Assets Downloaded event.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application
License TypelicenseTypeNopaid, trial, community, dev
Asset TypeassetTypeNohelm_chart, embedded_cluster_bundle, proxy_image
Pull TypepullTypeNo
  • any (default): Triggers a notification on every asset pull.
  • first: Triggers a notification only the first time that a customer pulls a release asset.
  • first_for_license_type: Triggers a notification the first time that a customer pulls a release asset with the selected license type. For example, if you select "Paid" for the License Type filter, you will receive a notification the first time that a customer pulls a release asset using a Paid license, even if the customer had previously pulled assets using a Trial license.

For customers who pulled software before March 18, 2026, the Vendor Portal applies is_first_customer_pull: false on all subsequent pulls. Also, First Pull for Selected License Type only tracks asset pulls that occur after March 27, 2026.

JSON definition​

{
"eventType": "release.asset_downloaded",
"filters": {
"assetType": "helm_chart",
"pullType": "first_for_license_type",
"licenseType": ["paid"]
}
}

Support events​

note

Use Support Bundle Uploaded when you need an immediate notification that a bundle has arrived. Use Support Bundle Analyzed when you need to filter or route based on instance tags, bundle metadata, or bundle name. The Analyzed event fires after the bundle is extracted, so it can resolve the instance and evaluate tags when that information is available. Not all bundles will have a resolved instance or tags, but only the Analyzed event supports instance tag filtering. If you are unsure which to use, start with Support Bundle Analyzed.

Support Bundle Uploaded​

When a support bundle is uploaded.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application

JSON definition​

{ "eventType": "support.bundle.uploaded", "filters": {} }

Support Bundle Analyzed​

When a support bundle analysis is completed.

Filters​

FilterJSON keyRequiredOptions
ApplicationappIdNoAny application in your account
License TypelicenseTypeNopaid, trial, community, dev
ChannelchannelIdNoAny channel for the selected application
CustomercustomerIdNoAny customer for the selected application

JSON definition​

{ "eventType": "support.bundle.analyzed", "filters": {} }