Worker Event Types

This page lists all supported event types for JFrog Workers. Use this reference to identify the right event for your use case, then follow the links to the corresponding code sample.

For step-by-step instructions on creating and configuring Workers in the UI, see Configure Workers for Custom Flows.

Event Driven Workers for Artifactory

Event-driven workers are a powerful tool that allows you to automate actions in response to specific events occurring within your Artifactory environment.

See this table for the supported worker events and relevant code samples:

WorkerDescriptionCode Samples
Before Download Worker

Triggers before downloading an artifact.

For example, verify user permissions to ensure they can download the artifact.

Platforms entitled to JFrog Advanced Security (JAS) or JFrog Curation can block downloads of artifacts using this Worker's Stop response. Platforms without JAS or Curation can still deploy and run this Worker, but the Stop Action is not enforced: if the Worker returns Stop, the download will not be blocked and a warning will be logged.

For example, log the download activity for analytics purposes.

Before Download Worker Code Sample
After Download WorkerTriggers when an artifact download process is initiated without waiting for it to complete.After Download Worker Code Sample
Before Create Property Worker

Triggers before creating a property.

For example, verify that users can create properties.

Before Create Property Worker Code Sample
Before Upload Worker

Triggers before uploading an artifact to cloud storage and without waiting for it to complete.

Platforms entitled to JFrog Advanced Security (JAS) or JFrog Curation can block uploads of artifacts using this Worker's Stop response. Platforms without JAS or Curation can still deploy and run this Worker, but the Stop Action is not enforced: if the Worker returns Stop, the upload will not be blocked and a warning will be logged.

For example, verify user permissions to upload an artifact.

Before Upload Worker Code Sample
After Create Worker

Triggers after successfully creating an artifact in the Artifactory Storage.

For example, add a property value automatically to a newly created artifact.

After Create Worker Code Sample
Before Delete Property Worker

Triggers before deleting a property for an artifact.

For example, verify user permissions to delete a property for an artifact.

Before Delete Property Worker Code Sample
Before Delete Worker

Triggers before deleting an artifact.

For example, terminate deleting an artifact based on certain conditions (tagged as production).

Before Delete Worker Code Sample
After Move Worker

Triggers after moving an artifact successfully from one path to another.

For example, notify the monitoring team after an artifact is moved.

After Move Worker Code Sample
After Build Info Save Worker

Triggers after saving build info.

For example, start a CI/CD pipeline immediately after saving build info.

After Build Info Save Worker Code Sample
Before Copy Worker

Triggers before copying an artifact.

For example, terminate copying an artifact based on certain conditions (tagged as deprecated).

Before Copy Worker Code Sample
Before Create Worker

Triggers before creating an artifact in Artifactory Storage.

Platforms entitled to JFrog Advanced Security (JAS) or JFrog Curation can block uploads of artifacts using this Worker's Stop response. Platforms without JAS or Curation can still deploy and run this Worker, but the Stop Action is not enforced: if the Worker returns Stop, the upload will not be blocked and a warning will be logged.

For example, terminate creating an artifact based on certain conditions (avoid duplicates).

Before Create Worker Code Sample
Before Move Worker

Triggers before moving an artifact.

For example, terminate moving an artifact based on certain conditions (tagged as production).

Before Move Worker Code Sample
Before Remote Info Worker

Triggers before querying the remote repository for an artifact's availability.

Platforms entitled to JFrog Advanced Security (JAS) or JFrog Curation can block downloads of remote info using this Worker's Stop response. Platforms without JAS or Curation can still deploy and run this Worker, but the Stop Action is not enforced: if the Worker returns Stop, the download will not be blocked and a warning will be logged.

For example, add an extra header before reaching a remote repository.

Before Remote Info Worker Code Sample
After Remote Download Worker

Triggers after downloading a remote artifact.

For example, update metadata after successfully downloading a remote artifact.

After Remote Download Worker Code Sample
Before Delete Replication Worker

Triggers before replicating a delete action.

For example, terminate replicating delete action based on certain conditions (particular artifactory instance).

Before Delete Replication Worker Code Sample
Before Directory Replication Worker

Triggers before replicating a directory.

Platforms entitled to JFrog Advanced Security (JAS) or JFrog Curation can block directory replication using this Worker's Stop response. Platforms without JAS or Curation can still deploy and run this Worker, but the Stop Action is not enforced: if the Worker returns Stop, the replication will not be blocked and a warning will be logged.

For example, terminate replicating a directory based on certain conditions (particular artifactory instance).

Before Directory Replication Worker Code Sample
Before File Replication Worker

Triggers before replicating a file.

Platforms entitled to JFrog Advanced Security (JAS) or JFrog Curation can block file replication using this Worker's Stop response. Platforms without JAS or Curation can still deploy and run this Worker, but the Stop Action is not enforced: if the Worker returns Stop, the replication will not be blocked and a warning will be logged.

For example, terminate replicating a file based on certain conditions (non-production files).

Before File Replication Worker Code Sample
Before Property Replication Worker

Triggers before replicating a property.

For example, terminate replicating a property based on certain conditions (specific properties).

Before Property Replication Worker Code Sample
Before Statistics Replication Worker

Triggers before replicating statistics.

For example, terminate replicating statistics based on certain conditions (download count).

Before Statistics Replication Worker Code Sample
After Copy Worker

Triggers after copying an artifact or directory from one repository to another. If the destination is a custom path and not exists, it is created first and then it copies.

For example, log the copy action for audit purposes.

After Copy Worker Code Sample
After Create Property Worker

Triggers after creating a property.

For example, log the create property action for audit purposes or notify another system.

After Create Property Worker Code Sample
After Delete Property Worker

Triggers after deleting a property.

For example, notify upon deletion of significant properties.

After Delete Property Worker Code Sample
After Delete Worker

Triggers after deleting an artifact.

For example, notify upon deletion of significant artifacts.

After Delete Worker Code Sample
Alt Remote Path Worker

Triggers before accessing a remote path.

Platforms entitled to JFrog Advanced Security (JAS) or JFrog Curation can block downloads via an alternative remote path using this Worker's Stop response. Platforms without JAS or Curation can still deploy and run this Worker, but the Stop Action is not enforced: if the Worker returns Stop, the download will not be blocked and a warning will be logged.

For example, ensure the remote path is changed before accessing the old one.

Alt Remote Path Worker Code Sample
Before Remote Download Worker

Triggers before downloading an artifact from a remote repository.

Platforms entitled to JFrog Advanced Security (JAS) or JFrog Curation can block downloads of artifacts from a remote repository using this Worker's Stop response. Platforms without JAS or Curation can still deploy and run this Worker, but the Stop Action is not enforced: if the Worker returns Stop, the download will not be blocked and a warning will be logged.

For example, verify the API token before processing the download.

Before Remote Download Worker Code Sample
Alt Response WorkerDeprecated from version 7.119.0
Alt All Responses Worker

Triggers before downloading an artifact from a remote path for handling responses.

Platforms entitled to JFrog Advanced Security (JAS) or JFrog Curation can block downloads from alternative responses using this Worker's Stop response. Platforms without JAS or Curation can still deploy and run this Worker, but the Stop Action is not enforced: if the Worker returns Stop, the download will not be blocked and a warning will be logged.

For example, replace the remote response to add custom information.

Alt All Responses Worker Code Sample
Alt Remote Content Worker

Triggers before downloading the remote content.

Platforms entitled to JFrog Advanced Security (JAS) or JFrog Curation can block downloads of remote content using this Worker's Stop response. Platforms without JAS or Curation can still deploy and run this Worker, but the Stop Action is not enforced: if the Worker returns Stop, the download will not be blocked and a warning will be logged.

For example, send alternate content instead of the requested artifact.

Alt Remote Content Worker Code Sample
After Download Error Worker

Triggers after an error occurs while downloading an artifact.

For example, monitor and log errors encountered during downloads.

After Download Error Worker Code Sample
Before Download Request Worker

Triggers once a download request has passed all filters (such as authentication), indicating readiness to process the request.

Platforms entitled to JFrog Advanced Security (JAS) or JFrog Curation can block downloads of artifacts from download requests using this Worker's Stop response. Platforms without JAS or Curation can still deploy and run this Worker, but the Stop Action is not enforced: if the Worker returns Stop, the download will not be blocked and a warning will be logged.

For example, verify user permissions again just before processing the download.

Before Download Request Worker Code Sample
Before Build Info Save Worker

Triggers before saving build info.

Platforms entitled to JFrog Advanced Security (JAS) or JFrog Curation can block publishing of build info using this Worker's Stop response. Platforms without JAS or Curation can still deploy and run this Worker, but the Stop Action is not enforced: if the Worker returns Stop, the publication will not be blocked and a warning will be logged.

For example, ensure all required metadata is included before saving build info to maintain data integrity.

Before Build Info Save Worker Code Sample
Before Repository Create Worker

Triggers before a repository configuration is persisted. This is a blocking event: a STOP response aborts the repository creation.

For example, enforce naming conventions, allowed package types, or required project assignment for new repositories.

System-managed repositories are excluded.

Before Repository Create Worker Code Sample
Before Repository Update Worker

Triggers before a repository configuration update is persisted. This is a blocking event: a STOP response aborts the update.

For example, prevent disabling security scanning on production repositories.

Before Repository Update Worker Code Sample
Before Repository Delete Worker

Triggers before a repository deletion is persisted. This is a blocking event: a STOP response aborts the deletion.

For example, protect critical repositories or enforce deletion approval workflows.

Before Repository Delete Worker Code Sample
After Repository Create Worker

Triggers after a repository is created and persisted successfully. This is a non-blocking event: Worker responses do not affect the create operation.

For example, provision permissions or notify external systems after a repository is created.

After Repository Create Worker Code Sample
After Repository Update Worker

Triggers after a repository configuration update is persisted successfully. This is a non-blocking event: Worker responses do not affect the update operation.

For example, push change audits to external systems or trigger downstream synchronization.

After Repository Update Worker Code Sample
After Repository Delete Worker

Triggers after a repository deletion completes successfully, or after a partial content deletion. This is a non-blocking event: Worker responses do not affect the delete operation.

For example, clean up external resources or record deletion audits. When content deletion is partial, the payload includes partial: true.

After Repository Delete Worker Code Sample

Event Driven Workers for Access

Event-driven workers are a powerful tool that allows you to automate actions in response to specific events occurring within your Access environment.

WorkerDescriptionCode Samples
Before Create Token Worker

Triggers before creating a token.

For example, verify user permissions to ensure they can create a token.

Before Create Token Worker Code Sample
Before Revoke Token Worker

Triggers before revoking a token.

For example, verify whether a token is in active use.

Before Revoke Token Worker Code Sample
Before Token Expiry Worker

Triggers before a token expires.

For example, send a message to users 24 hours before their token expires.

Before Token Expiry Worker Code Sample

Event Driven Workers for Runtime

WorkerDescriptionCode Samples
After Runtime Workload State Change Worker​Triggers when a runtime workload change event occurs. ​ For example, monitor and alert on vulnerabilities and risks associated with image tags in a Kubernetes cluster.After Runtime Workload State Change Worker​​ Code Sample

Did this page help you?