Webhook Event Types

The following are the supported event types according to each domain with an example for each event of the payload that will be sent to the configured URL.

Filtering Events with event_filter

Every webhook subscription, regardless of domain, uses an event_filter block to choose which events trigger its handlers. The block has three parts:

  • domain — The JFrog subsystem that emits the event (for example, artifact, docker, build, release_bundle_v2, app_trust).
  • event_types — An array of event names within that domain (for example, ["deployed", "deleted"]).
  • criteria — A domain-specific object that narrows which occurrences of the selected event types actually trigger the webhook (for example, a list of repositories for the artifact domain).
  • projectKey (string) — The event's project context must match this value exactly. Applies to all AppTrust events (Application, Application version, and Gate evaluation).

For example, to subscribe to artifact deploy and delete events on a single local repository:

"event_filter": {
  "domain": "artifact",
  "event_types": ["deployed", "deleted"],
  "criteria": {
    "anyLocal": true,
    "anyRemote": false,
    "repoKeys": ["my-repo"],
    "includePatterns": [],
    "excludePatterns": []
  }
}

The full subscription request schema is documented in the Create a New Webhook Subscription REST API reference. Worked end-to-end examples, including handlers, secrets, and headers, appear in Custom Webhooks.

Criteria by domain

The shape of the criteria object depends on the domain. Each per-event section below describes what you can narrow on in prose; the list below summarizes the filter dimensions per domain.

  • artifact, artifact_property, docker — Filter by repositories and repository paths using anyLocal, anyRemote, repoKeys, includePatterns, and excludePatterns.
  • build — Filter by build names or build patterns.
  • release_bundle — Filter by Release Bundle names or patterns.
  • release_bundle_v2 — Apply to all Release Bundles or to selected ones, with optional project scope (Artifactory 7.125.3 and later).
  • release_bundle_v2_promotion — Filter by the target environments to which Release Bundle v2 versions are promoted.
  • distribution, destination — Filter by Release Bundle names/patterns and the Edge nodes involved in distribution.
  • curation — No narrowing criteria; all curation events on the instance are delivered.
  • user — No narrowing criteria; the locked event fires on every account lockout.
  • app_trust — Filter by projectKey (string, exact match), applicationKeys (array, in-list), and stages (array, in-list). See Filter criteria under Domain: AppTrust for details, including the rule that setting stages excludes stage-agnostic Application events.
📘

Note

Exact criteria JSON field names are documented on this page for the artifact-family domains (where they appear in the Webhooks REST API schema). For the other domains, refer to that API reference for the complete schema.

User Context in Event Payloads

All Artifactory webhook event payloads include a userContext object that identifies the user who initiated the action that caused the event. This enables auditing, compliance, and user-context-aware integrations such as tracking which user deployed an artifact or promoted a build.

"userContext": {
  "id": "johndoe",
  "isToken": false,
  "realm": "internal"
}
FieldTypeDescription
idStringThe username of the user who triggered the event. For access token-authenticated requests, this is the token subject (for example, jffe@<platform-id>/users/admin).
isTokenBooleantrue if the event was triggered using an access token; false if triggered directly by a user account.
realmStringThe authentication realm of the user (for example, internal, ldap).

You can reference these values in Custom Webhook payload templates using dotted syntax, for example: {{ .userContext.id }}.

Domain: Artifact

Includes events that are triggered when certain artifact events occur in Artifactory:

Event: deployed

The Webhook is triggered when an artifact is deployed to a repository. You can select the repositories and repository paths on which the Webhook will be applied.

Artifact was Deployed

{
  "domain": "artifact",
  "event_type": "deployed",
  "data": {
    "repo_key": "sample_repo",
    "path": "sample_dir/sample.txt",
    "name": "sample.txt",
    "sha256": "sample_checksum",
    "size": 0
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: deleted

The Webhook is triggered when an artifact is deleted from a repository. You can select the repositories on which the Webhook will be applied.

Artifact was Deleted

{
  "domain": "artifact",
  "event_type": "deleted",
  "data": {
    "repo_key": "sample_repo",
    "path": "sample_dir/sample.txt",
    "name": "sample.txt",
    "sha256": "sample_checksum",
    "size": 0
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: moved

The Webhook is triggered when an artifact is moved from one repository to another. You can select the repositories and repository paths on which the Webhook will be applied. The Webhook will apply to the repositories from which the artifact is moved.

Artifact was Moved

{
  "domain": "artifact",
  "event_type": "moved",
  "data": {
    "repo_key": "sample_repo",
    "path": "sample_dir/sample.txt",
    "name": "sample.txt",
    "sha256": "sample_checksum",
    "size": 0,
    "source_repo_path": "sample_repo",
    "target_repo_path": "sample_target_repo"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: copied

The Webhook is triggered when an artifact is copied from one repository to another. You can select the repositories and repository paths on which the Webhook will be applied. The Webhook will apply to the repositories from which the artifact is copied.

Artifact was Copied

{
  "domain": "artifact",
  "event_type": "copied",
  "data": {
    "repo_key": "sample_repo",
    "path": "sample_dir/sample.txt",
    "name": "sample.txt",
    "sha256": "sample_checksum",
    "size": 0,
    "source_repo_path": "sample_repo",
    "target_repo_path": "sample_target_repo"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: cached

The Webhook is triggered for each artifact that is pulled from a new remote repository with cache enabled. Webhooks are generated when downloading remote artifacts, for example: npm install busybox. This event can also be triggered when a pull replication is configured.

Artifact was Cached

{
  "domain": "artifact",
  "event_type": "cached",
  "data": {
    "repo_key": "sample_repo",
    "path": "sample_dir/sample.txt",
    "name": "sample.txt",
    "sha256": "sample_checksum",
    "size": 0
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Domain: Artifact Properties

Includes events that are triggered when certain artifact property actions occur in Artifactory:

Event: added

The Webhook is triggered when a property is added to an artifact/folder in a repository, or the repository itself. You can select the repositories and repository paths on which the Webhook will be applied.

Artifact Property was Added

{
  "domain": "artifact_property",
  "event_type": "added",
  "data": {
    "repo_key": "sample_repo",
    "path": "sample_dir/sample.txt",
    "name": "sample.txt",
    "sha256": "sample_checksum",
    "size": 0,
    "property_key": "sample_key",
    "property_values": [
      "sample_value1"
    ]
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: deleted

The Webhook is triggered when a property is deleted from an artifact/folder in a repository, or the repository itself. You can select the repositories and repository paths on which the Webhook will be applied.

Artifact Property was Deleted

{
  "domain": "artifact_property",
  "event_type": "deleted",
  "data": {
    "repo_key": "sample_repo",
    "path": "sample_dir/sample.txt",
    "name": "sample.txt",
    "sha256": "sample_checksum",
    "size": 0,
    "property_key": "sample_key",
    "property_values": [
      "sample_value1"
    ]
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Domain: Docker

Includes events that are triggered when certain Docker-related and OCI-related events occur in Artifactory:

Event: pushed

The Webhook is triggered when a new tag of a Docker or OCI image is pushed to a Docker or OCI repository. You can select the repositories and repository paths on which the Webhook will be applied.

Tag was Pushed

{
  "domain": "docker",
  "event_type": "pushed",
  "data": {
    "repo_key": "sample_repodocker-dev",
    "path": "sample_dirsample-image/1.0.0/sample.txtmanifest.json",
    "name": "sample.txtmanifest.json",
    "sha256": "sample_checksum",
    "size": 0120,
    "image_name": "sample_archsample-image",
    "tag": "sample_image1.0.0",
    "platforms": [
      {
        "architecture": "sample_os",
        "os": "sample_tag"
      }
    ],
    "image_type": "oci"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: deleted

The Webhook is triggered when a tag of a Docker or OCI image is deleted from a Docker or OCI repository. You can select the repositories and repository paths on which the Webhook will be applied.

Tag was Deleted

{
  "domain": "docker",
  "event_type": "deleted",
  "data": {
    "repo_key": "sample_repodocker-dev",
    "path": "sample_dirsample-image/1.0.0/sample.txtmanifest.json",
    "name": "sample.txtmanifest.json",
    "sha256": "sample_checksum",
    "size": 0120,
    "image_name": "sample_archsample_image",
    "tag": "sample_image1.0.0",
    "platforms": [
      {
        "architecture": "sample_os",
        "os": "sample_tag"
      }
    ],
    "image_type": "oci"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: promoted

The Webhook is triggered when a tag of a Docker or OCI image is promoted. You can select the repositories and repository paths on which the Webhook will be applied. The Webhook will apply on the repositories from which the Docker or OCI tag was promoted.

Tag was Promoted

{
  "domain": "docker",
  "event_type": "promoted",
  "data": {
    "repo_key": "sample_repodocker-dev",
    "path": "sample_dirsample-image/1.0.0/sample.txtmanifest.json",
    "name": "sample.txtmanifest.json",
    "sha256": "sample_checksum",
    "size": 0120,
    "image_name": "sample_archsample-image",
    "tag": "sample_image1.0.0",
    "platforms": [
      {
        "architecture": "sample_os",
        "os": "sample_tag"
      }
    ],
    "image_type": "docker",
    "target_repo": "docker-stg",
    "target_tag": "latest"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Domain: Build

Includes events that are triggered when certain build-related events occur in Artifactory.

Event: uploaded

The Webhook is triggered when a new build is uploaded. You can select the build names or build patterns on which the Webhook will be applied.

Build was Uploaded

{
  "domain": "build",
  "event_type": "uploaded",
  "data": {
    "build_name": "sample_build_name",
    "build_number": "1",
    "build_started": "1970-01-01T00:00:00.000+0000",
    "build_repo": "artifactory-build-info"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: deleted

The Webhook is triggered when a build is deleted. You can select the build names or build patterns on which the Webhook will be applied.

Build was Deleted

{
  "domain": "build",
  "event_type": "deleted",
  "data": {
    "build_name": "sample_build_name",
    "build_number": "1",
    "build_started": "1970-01-01T00:00:00.000+0000",
    "build_repo": "artifactory-build-info"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: promoted

The Webhook is triggered when a build is promoted. You can select the build names or build patterns on which the Webhook will be applied.

Build was Promoted

{
  "domain": "build",
  "event_type": "promoted",
  "data": {
    "build_name": "sample_build_name",
    "build_number": "1",
    "build_started": "1970-01-01T00:00:00.000+0000",
    "build_repo": "artifactory-build-info"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}
❗️

Important

Artifactory 7.122.2 and later support the creation of webhooks for builds within a specific project. The following guidelines apply:

  • When you create a build webhook under the global scope (All Projects), you will receive notifications for all builds in the system that match the specified name/pattern. For example, if you define a build name that exists at both the global scope and within a particular project, you will receive notifications for both builds. If you select the Any Build option when in All Projects, you will receive notifications for every build in the system.
  • When you create a build webhook from within a specific project, you will receive notifications for builds within that project only that match the specified name/pattern.

Domain: Release Bundle

Includes events that are triggered when certain Release Bundle events occur in Artifactory:

Event: created

The Webhook is triggered when a Release Bundle is created. You can select the Release Bundle names or patterns on which the Webhook will be applied.

Release Bundle was Created

{
  "domain": "release_bundle",
  "event_type": "created",
  "data": {
    "release_bundle_name": "release-bundle",
    "release_bundle_version": "1.0.0",
    "release_bundle_size": 100
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: signed

The Webhook is triggered when a Release Bundle is signed. You can select the Release Bundle names or patterns on which the Webhook will be applied.

Release Bundle was Signed

{
  "domain": "release_bundle",
  "event_type": "signed",
  "data": {
    "release_bundle_name": "release-bundle",
    "release_bundle_version": "1.0.0",
    "release_bundle_size": 100
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: deleted

The Webhook is triggered when a Release Bundle is deleted. You can select the Release Bundle names or patterns on which the Webhook will be applied.

Release Bundle was Deleted

{
  "domain": "release_bundle",
  "event_type": "deleted",
  "data": {
    "release_bundle_name": "release-bundle",
    "release_bundle_version": "1.0.0",
    "release_bundle_size": 100
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Domain: Curation

Includes events that are triggered when certain events occur in Curation.

Event: Package was blocked by Curation

The Webhook is triggered when Curation blocks a package.

Package was Blocked

{
    "package_type": "npm",
    "package_name": "vm2",
    "package_version": "3.9.1",
    "package_url": "https://registry.npmjs.org/vm2/-/vm2-3.9.1.tgz",
    "reason": "Policy violations",
    "curated_repository_server_name": "",
    "curated_repository_name": "remote-npm-repo",
    "curated_project": "origin-project",
    "username": "John Doe",
    "user_mail": "[email protected]",
    "origin_repository_server_name": "origin-server",
    "origin_repository_name": "origin-repo",
    "origin_project": "origin-project",
    "public_repo_url": "https://registry.npmjs.org",
    "public_repo_name": "npm registry",
    "policies": [
      {
        "policy_name": "Vulns",
        "policy_id": 84,
        "dry_run": false,
        "result": "Blocked",
        "condition_name": "Block Sev High",
        "condition_category": "security"
      }
    ],
    "event_id": 1234
}

Event: Curation Waiver Request Created

The webhook is triggered when a waiver request is created.

Waiver Request Created

{
    "waiver_request": {
        "id": 5,
        "created_at": "1739697682644",
        "closed_at": "",
        "repo_key": "npm-remote",
        "pkg_type": "npm",
        "pkg_name": "vm2",
        "pkg_version": "3.9.3",
        "status": "pending",
        "decision_owners": [
            "readers",
            "group2"
        ],
        "requesters": [
            {
                "user": "anonymous",
                "email": "[email protected]",
                "requested_at": "",
                "justification": "reasons"
            }
        ],
        "policies": [
            {
                "id": 5,
                "name": "aged",
                "scope": "all_repos",
                "policy_action": "block",
                "condition_id": "13",
                "condition_name": "Package version is aged (newer version available)",
                "condition_category": "operational",
                "can_approve": false,
                "pkg_types_include": null,
                "decision_owners": [
                    "readers"
                ]
            },
            {
                "id": 7,
                "name": "policy2",
                "scope": "all_repos",
                "policy_action": "block",
                "condition_id": "13",
                "condition_name": "Package version is aged (newer version available)",
                "condition_category": "operational",
                "can_approve": false,
                "pkg_types_include": null,
                "decision_owners": [
                    "group2"
                ]
            }
        ]
    },
    "pkg_url": "https://test-env/ui/catalog/packages/details/npm/vm2/3.9.3"
}

Event: Curation Waiver Request Updated

The webhook is triggered when a waiver request was updated.

Waiver Request Updated

{
    "waiver_request": {
        "id": 3,
        "created_at": "2025-02-15T22:14:58+02:00",
        "closed_at": "",
        "repo_key": "npm-remote",
        "pkg_type": "npm",
        "pkg_name": "vm2",
        "pkg_version": "3.9.3",
        "status": "pending",
        "decision_owners": [
            "group2",
            "readers"
        ],
        "requesters": [
            {
                "user": "anonymous",
                "email": "[email protected]",
                "requested_at": "2025-02-15T22:14:58+02:00",
                "justification": "reasons"
            }
        ],
        "policies": [
            {
                "id": 5,
                "name": "aged policy 1",
                "scope": "all_repos",
                "policy_action": "block",
                "condition_id": "13",
                "condition_name": "Package version is aged (newer version available)",
                "condition_category": "operational",
                "can_approve": true,
                "pkg_types_include": null,
                "decision_owners": [
                    "readers"
                ]
            },
            {
                "id": 7,
                "name": "aged policy 2",
                "scope": "all_repos",
                "policy_action": "block",
                "condition_id": "13",
                "condition_name": "Package version is aged (newer version available)",
                "condition_category": "operational",
                "can_approve": false,
                "pkg_types_include": null,
                "decision_owners": [
                    "group2"
                ]
            }
        ]
    },
    "decision": {
        "created_by": "admin",
        "created_at": "",
        "justification": "not relevant",
        "status": "approved"
    },
    "pkg_url": "https://test-env/ui/catalog/packages/details/npm/vm2/3.9.3",
    "decided_policies": [
        {
            "id": 5,
            "name": "aged policy 1"
        }
    ],
    "pending_policies": [
        {
            "id": 7,
            "name": "aged policy 2"
        }
    ]
}

Event: Curation Policy Changed

This webhook is triggered whenever the configuration of Curation policies is updated, including any changes to the policy conditions.

A policy with one waiver was changed from a malicious condition to a critical vulnerability condition.

{
    "curation_event_type": "Policy Updated",
    "policy_before": {
      "id": "20",
      "created_by": "admin",
      "updated_by": "admin",
      "created_at": "2025-03-23T16:26:01+02:00",
      "updated_at": "2025-03-23T16:26:32+02:00",
      "enabled": true,
      "name": "some policy name",
      "scope": "all_repos",
      "policy_action": "block",
      "condition_id": "1",
      "condition": {
        "id": "1",
        "is_custom": false,
        "created_at": "2023-08-01T03:00:00+03:00",
        "updated_at": "2023-08-01T03:00:00+03:00",
        "risk_type": "security",
        "supported_pkg_types": [
          "npm",
          "PyPI",
          "Maven",
          "Go",
          "NuGet",
          "Conan",
          "Gems",
          "Gradle",
          "HuggingFaceML",
          "Docker"
        ],
        "condition_template_id": "isMalicious",
        "name": "Malicious package"
      },
      "waivers": [
        {
          "id": "7",
          "pkg_type": "npm",
          "pkg_name": "jQuery",
          "all_versions": false,
          "pkg_versions": [
            "1.7.4"
          ],
          "justification": "something",
          "created_by": "admin",
          "created_at": "2025-03-23T16:26:24+02:00"
        }
      ],
      "waiver_request_config": "forbidden"
    },
    "policy_after": {
      "id": "20",
      "created_by": "admin",
      "updated_by": "admin",
      "created_at": "2025-03-23T16:26:01+02:00",
      "updated_at": "2025-03-23T16:26:39+02:00",
      "enabled": true,
      "name": "some policy name",
      "scope": "all_repos",
      "policy_action": "block",
      "condition_id": "3",
      "condition": {
        "id": "3",
        "is_custom": false,
        "created_at": "2023-08-01T03:00:00+03:00",
        "updated_at": "2023-08-01T03:00:00+03:00",
        "risk_type": "security",
        "supported_pkg_types": [
          "npm",
          "PyPI",
          "Maven",
          "Go",
          "NuGet",
          "Conan",
          "Gems",
          "Gradle"
        ],
        "condition_template_id": "CVECVSSRange",
        "name": "CVE with CVSS score of 9 or above (with or without a fix version available)",
        "param_values": [
          {
            "param_id": "vulnerability_cvss_score_range",
            "value": [9, 10]
          },
          {
            "param_id": "apply_only_if_fix_is_available",
            "value": false
          }
        ]
      },
      "waivers": [
        {
          "id": "7",
          "pkg_type": "npm",
          "pkg_name": "jQuery",
          "all_versions": false,
          "pkg_versions": [
            "1.7.4"
          ],
          "justification": "something",
          "created_by": "admin",
          "created_at": "2025-03-23T16:26:24+02:00"
        }
      ],
      "waiver_request_config": "forbidden"
    }
}

Domain: Distribution

Includes events that are triggered when a Release Bundle version is distributed to one or more Edge nodes.

Event: distribute_started

The Webhook is triggered when Release Bundle distribution has started.

Distribution was Started

  {
  "domain": "distribution",
  "event_type": "distribute_started",
  "data": {
    "release_bundle_name": "release-bundle",
    "release_bundle_version": "1.0.0",
    "release_bundle_size": 100,
    "edge_node_info_list": [
      {
        "edge_node_name": "edge-node-1",
        "edge_node_address": "http://edge-node-1-url"
      },
      {
        "edge_node_name": "edge-node-2",
        "edge_node_address": "https://edge-node-2-url"
      }
    ],
    "status_message": "Distribution succeeded",
    "transaction_id": 123456789
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: distribute_completed

The Webhook is triggered when Release Bundle distribution has completed.

Distribution was Completed

  {
  "domain": "distribution",
  "event_type": "distribute_completed",
  "data": {
    "release_bundle_name": "release-bundle",
    "release_bundle_version": "1.0.0",
    "release_bundle_size": 100,
    "edge_node_info_list": [
      {
        "edge_node_name": "edge-node-1",
        "edge_node_address": "http://edge-node-1-url"
      },
      {
        "edge_node_name": "edge-node-2",
        "edge_node_address": "https://edge-node-2-url"
      }
    ],
    "status_message": "Distribution succeeded",
    "transaction_id": 123456789
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: distribute_aborted

The Webhook is triggered when Release Bundle distribution has been aborted.

Distribution was Aborted

{
  "domain": "distribution",
  "event_type": "distribute_aborted",
  "data": {
    "release_bundle_name": "release-bundle",
    "release_bundle_version": "1.0.0",
    "release_bundle_size": 100,
    "edge_node_info_list": [
      {
        "edge_node_name": "edge-node-1",
        "edge_node_address": "http://edge-node-1-url"
      },
      {
        "edge_node_name": "edge-node-2",
        "edge_node_address": "https://edge-node-2-url"
      }
    ],
    "status_message": "Distribution succeeded",
    "transaction_id": 123456789
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: distribute_failed

The Webhook is triggered when Release Bundle distribution has failed.

Distribution has Failed

  {
  "domain": "distribution",
  "event_type": "distribute_failed",
  "data": {
    "release_bundle_name": "release-bundle",
    "release_bundle_version": "1.0.0",
    "release_bundle_size": 100,
    "edge_node_info_list": [
      {
        "edge_node_name": "edge-node-1",
        "edge_node_address": "http://edge-node-1-url"
      },
      {
        "edge_node_name": "edge-node-2",
        "edge_node_address": "https://edge-node-2-url"
      }
    ],
    "status_message": "Distribution succeeded",
    "transaction_id": 123456789
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: deletion_started

The Webhook is triggered when a Release Bundle version deletion has started on one or more Edge nodes.

Deleting a Release Bundle was Started

  {
  "domain": "distribution",
  "event_type": "delete_started",
  "data": {
    "release_bundle_name": "release-bundle",
    "release_bundle_version": "1.0.0",
    "release_bundle_size": 100,
    "edge_node_info_list": [
      {
        "edge_node_name": "edge-node-1",
        "edge_node_address": "http://edge-node-1-url"
      },
      {
        "edge_node_name": "edge-node-2",
        "edge_node_address": "https://edge-node-2-url"
      }
    ],
    "status_message": "Distribution succeeded",
    "transaction_id": 123456789
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: deletion_completed

The Webhook is triggered when a Release Bundle version deletion has completed from one or more Edge nodes.

Deleting a Release Bundle was Completed

{
  "domain": "distribution",
  "event_type": "delete_completed",
  "data": {
    "release_bundle_name": "release-bundle",
    "release_bundle_version": "1.0.0",
    "release_bundle_size": 100,
    "edge_node_info_list": [
      {
        "edge_node_name": "edge-node-1",
        "edge_node_address": "http://edge-node-1-url"
      },
      {
        "edge_node_name": "edge-node-2",
        "edge_node_address": "https://edge-node-2-url"
      }
    ],
    "status_message": "Distribution succeeded",
    "transaction_id": 123456789
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: deletion_failed

The Webhook is triggered when a Release Bundle version deletion has failed on one or more Edge nodes.

Deleting a Release Bundle has Failed

  {
  "domain": "distribution",
  "event_type": "delete_failed",
  "data": {
    "release_bundle_name": "release-bundle",
    "release_bundle_version": "1.0.0",
    "release_bundle_size": 100,
    "edge_node_info_list": [
      {
        "edge_node_name": "edge-node-1",
        "edge_node_address": "http://edge-node-1-url"
      },
      {
        "edge_node_name": "edge-node-2",
        "edge_node_address": "https://edge-node-2-url"
      }
    ],
    "status_message": "Distribution succeeded",
    "transaction_id": 123456789
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Domain: Destination

Includes events that are triggered when a Release Bundle status changes on Edge Nodes.

Requires Artifactory version 7.15.1 and above.

Event: received

The Webhook is triggered when a Release Bundle was received on an Edge Node.

Release Bundle was Received

{
  "domain": "destination",
  "event_type": "received",
  "data": {
    "release_bundle_name": "sample_release_bundle_name",
    "release_bundle_version": "1.0.0",
    "status_message": "Release bundle received!"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: delete_started

The Webhook is triggered when a Release Bundle deletion from an Edge Node completed.

Release Bundle Deletion Started

{
  "domain": "destination",
  "event_type": "delete_started",
  "data": {
    "release_bundle_name": "sample_release_bundle_name",
    "release_bundle_version": "1.0.0",
    "status_message": "Release bundle received!"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: delete_completed

The Webhook is triggered when a Release Bundle deletion from an Edge Node completed.

Release Bundle Deletion Completed

{
  "domain": "destination",
  "event_type": "delete_completed",
  "data": {
    "release_bundle_name": "sample_release_bundle_name",
    "release_bundle_version": "1.0.0",
    "status_message": "Release bundle received!"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: delete_failed

The Webhook is triggered when a Release Bundle deletion from an Edge Node fails.

Release Bundle Deletion Failed

{
  "domain": "destination",
  "event_type": "delete_failed",
  "data": {
    "release_bundle_name": "sample_release_bundle_name",
    "release_bundle_version": "1.0.0",
    "status_message": "Release bundle received!"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Domain: User

Includes events that are triggered when user-related events occur in Artifactory:

Event: User has been locked

The Webhook is triggered when a user's account is locked after a specified number of failed login attempts.

User has been locked

{
  "domain": "user",
  "event_type": "locked",
  "data": {
    "admin": false,
    "disable_ui_access": false,
    "email": "[email protected]",
    "groups": [
      "readers"
    ],
    "internal_password_disabled": false,
    "last_logged_in": "2022-08-16T13:10:00Z",
    "profile_updatable": true,
    "realm": "internal",
    "status": "locked",
    "username": "johndoe"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Domain: Release Bundle v2

The Release Bundle v2 domain includes events that are triggered when attempting to create a Release Bundle v2.

❗️

Important

Artifactory 7.125.3 and later support the creation of webhooks for Release Bundle v2 versions within a specific project.

Event: Release Bundle v2 creation started

This Webhook is triggered when the creation of a Release Bundle v2 version begins. You can choose whether to apply the Webhook to all Release Bundles or only to selected ones.

{
  "domain": "release_bundle_v2",
  "event_type": "release_bundle_v2_started",
  "data": {
    "repository_key": "repo-key",
    "release_bundle_name": "release-bundle-1",
    "release_bundle_version": "1.0.0",
    "created": "2022-10-10T15:36:04.894+03:00\"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Release Bundle v2 creation failed

This Webhook is triggered when the creation of a Release Bundle v2 version fails. You can choose whether to apply the Webhook to all Release Bundles or only to selected ones.

{
  "domain": "release_bundle_v2",
  "event_type": "release_bundle_v2_failed",
  "data": {
    "repository_key": "repo-key",
    "release_bundle_name": "release-bundle-1",
    "release_bundle_version": "1.0.0"
    "created": "2022-10-10T15:36:04.894+03:00\"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Release Bundle v2 creation completed

This Webhook is triggered when the creation of a Release Bundle v2 is completed. You can choose whether to apply the Webhook to all Release Bundles or only to selected ones.

{
  "domain": "release_bundle_v2",
  "event_type": "release_bundle_v2_completed",
  "data": {
    "repository_key": "repo-key",
    "release_bundle_name": "release-bundle-1",
    "release_bundle_version": "1.0.0"
    "created": "2022-10-10T15:36:04.894+03:00\"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_source>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}
📘

Note

Only platform administrators can create Webhook events that apply to Release Bundles in specific projects. Project administrators cannot create these types of events.

Domain: Release Bundle v2 Promotion

The Release Bundle v2 Promotion domain includes events that are triggered when attempting to promote a Release Bundle v2 to a new environment.

❗️

Important

Artifactory 7.125.3 and later support the creation of webhooks for Release Bundle v2 versions within a specific project.

Event: Release Bundle v2 promotion started

This Webhook is triggered when the promotion of a Release Bundle v2 version begins. You must choose the environments to which the Webhook will apply.

{
  "domain": "release_bundle_v2_promotion",
  "event_type": "release_bundle_v2_promotion_started",
  "data": {
    "repository_key": "repo-key",
    "release_bundle_name": "release-bundle-1",
    "release_bundle_version": "1.0.0",
    "environment": "QA",
    "created": "2022-10-10T15:36:04.894+03:00\",
    "created_millis": ":1665405448941"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_souce>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Release Bundle v2 promotion failed

This Webhook is triggered when the promotion of a Release Bundle v2 version fails. You must choose the environments to which the Webhook will apply.

{
  "domain": "release_bundle_v2_promotion",
  "event_type": "release_bundle_v2_promotion_failed",
  "data": {
    "repository_key": "repo-key",
    "release_bundle_name": "release-bundle-1",
    "release_bundle_version": "1.0.0",
    "environment": "QA",
    "created": "2022-10-10T15:36:04.894+03:00\",
    "created_millis": ":1665405448941"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_souce>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Release Bundle v2 promotion completed

This Webhook is triggered when the promotion of a Release Bundle v2 is completed. You must choose the environments to which the Webhook will apply.

{
  "domain": "release_bundle_v2_promotion",
  "event_type": "release_bundle_v2_promotion_completed",
  "data": {
    "repository_key": "repo-key",
    "release_bundle_name": "release-bundle-1",
    "release_bundle_version": "1.0.0",
    "environment": "QA",
    "created": "2022-10-10T15:36:04.894+03:00\",
    "created_millis": ":1665405448941"
  },
  "subscription_key": "test",
  "jpd_origin": "https://<your_origin>",
  "source": "jfrog/<your_souce>",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}
📘

Note

Only platform administrators can create Webhook events that apply to Release Bundles in specific projects. Project administrators cannot create these types of events.

Domain: AppTrust

The AppTrust domain includes events that are triggered when defined AppTrust events occur in Artifactory. AppTrust events are grouped into three categories:

  • Application events — Triggered when an application is created, updated, or deleted.
  • Application version events — Triggered when an application version is created, promoted, or released.
  • Gate evaluation events — Triggered when an application version is evaluated against the policies enforced at an entry or exit gate.

To subscribe to these events programmatically, see Create a New Webhook Subscription in the JFrog REST API reference.

Filter criteria

You can narrow AppTrust webhook subscriptions using the following fields in the criteria object:

  • applicationKeys (array of strings) — The event's application_key must appear in the array. Applies to all AppTrust events.
  • stages (array of strings) — The event's stage must appear in the array. Applies to Application version and Gate evaluation events only.

You can combine any of the three fields. An event is delivered only when it matches every filter you have specified.

❗️

Stages and Application events

Application events (application_creation_*, application_update_*, application_deletion_*) are stage-agnostic and do not carry a stage field. If you set stages in the criteria, those events are not delivered, even when they belong to a matching projectKey or applicationKey. Create a separate webhook subscription without stages if you want to receive Application events alongside stage-filtered Version or Gate events.

Example: deliver only PROD version and gate events for two applications

"event_filter": {
  "domain": "app_trust",
  "event_types": [
    "version_promotion_completed",
    "exit_gate_evaluation_validation_failed"
  ],
  "criteria": {
    "applicationKeys": ["billing-api", "checkout-api"],
    "stages": ["PROD"]
  }
}

Event: Entry gate evaluation started

This webhook is triggered when entry gate evaluation starts on a promoted application version. During evaluation, the application version is validated against the policies enforced at the entry gate. You can specify the application, the version, and the stage.

{
  "domain": "app_trust",
  "event_type": "entry_gate_evaluation_started",
  "data": {
    "application_key": "my-app",
    "application_version": "1.0.0",
    "stage": "DEV",
    "evaluation_id": "1992562792781848576"
  },
  "subscription_key": "test",
  "source": "AppTrust",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Entry gate evaluation passed

This webhook is triggered when the entry gate evaluation of a promoted application version is completed successfully. You can specify the application, the version, and the stage.

{
  "domain": "app_trust",
  "event_type": "entry_gate_evaluation_validation_passed",
  "data": {
    "application_key": "my-app",
    "application_version": "1.0.0",
    "stage": "DEV",
    "evaluation_id": "1992562792781848576",
    "decision": "pass",
    "explanation": "All policies passed."
  },
  "subscription_key": "test",
  "source": "AppTrust",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Entry gate evaluation failed

This webhook is triggered when a promoted application fails policy validation at the entry gate to the stage. You can specify the application, the version, and the stage.

{
  "domain": "app_trust",
  "event_type": "entry_gate_evaluation_validation_failed",
  "data": {
    "application_key": "my-app",
    "application_version": "1.0.0",
    "stage": "DEV",
    "evaluation_id": "1992562792781848576",
    "decision": "fail",
    "explanation": "PR Merge policy {evaluation} failed due to violated policies: [test-dev-entry]."
  },
  "subscription_key": "test",
  "source": "AppTrust",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Exit gate evaluation started

This webhook is triggered when exit gate evaluation starts on a promoted application version. During evaluation, the application version is validated against the policies enforced at the exit gate. You can specify the application, the version, and the stage.

{
  "domain": "app_trust",
  "event_type": "exit_gate_evaluation_started",
  "data": {
    "application_key": "my-app",
    "application_version": "1.0.0",
    "stage": "DEV",
    "evaluation_id": "1992562792781848576"
  },
  "subscription_key": "test",
  "source": "AppTrust",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Exit gate evaluation passed

This webhook is triggered when the exit gate evaluation of a promoted application version is completed successfully. You can specify the application, the version, and the stage.

{
  "domain": "app_trust",
  "event_type": "exit_gate_evaluation_validation_passed",
  "data": {
    "application_key": "my-app",
    "application_version": "1.0.0",
    "stage": "DEV",
    "evaluation_id": "1992562792781848576",
    "decision": "pass",
    "explanation": "All policies passed."
  },
  "subscription_key": "test",
  "source": "AppTrust",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Exit gate evaluation failed

This webhook is triggered when an application version fails policy validation at the exit gate of the stage. You can specify the application, the version, and the stage.

{
  "domain": "app_trust",
  "event_type": "exit_gate_evaluation_validation_failed",
  "data": {
    "application_key": "my-app",
    "application_version": "1.0.0",
    "stage": "DEV",
    "evaluation_id": "1992562792781848576",
    "decision": "fail",
    "explanation": "PR Merge policy {evaluation} failed due to violated policies: [test-dev-exit]."
  },
  "subscription_key": "test",
  "source": "AppTrust",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Application creation started

This webhook is triggered when the process of creating an application starts.

{
  "domain": "app_trust",
  "event_type": "application_creation_started",
  "data": {
    "application_key": "my-app",
    "project_key": "my-project",
    "display_name": "My Application",
    "description": "A sample application",
    "criticality": "medium",
    "maturity_level": "production",
    "labels": [
      {
        "key": "environment",
        "value": "production"
      }
    ],
    "owners": [
      {
        "name": "john.doe",
        "type": "user"
      }
    ],
    "timestamp": 1640995200000
  },
  "subscription_key": "test",
  "jpd_origin": "https://apptrustswampup.jfrog.io",
  "source": "jfrog/saharb",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Application creation completed

This webhook is triggered when application creation is completed.

{
  "domain": "app_trust",
  "event_type": "application_creation_completed",
  "data": {
    "application_key": "my-app",
    "project_key": "my-project",
    "display_name": "My Application",
    "description": "A sample application",
    "criticality": "medium",
    "maturity_level": "production",
    "labels": [
      {
        "key": "environment",
        "value": "production"
      }
    ],
    "owners": [
      {
        "name": "john.doe",
        "type": "user"
      }
    ],
    "timestamp": 1640995200000
  },
  "subscription_key": "test",
  "jpd_origin": "https://apptrustswampup.jfrog.io",
  "source": "jfrog/saharb",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Application creation failed

This webhook is triggered when application creation fails.

{
  "domain": "app_trust",
  "event_type": "application_creation_failed",
  "data": {
    "application_key": "my-app",
    "project_key": "my-project",
    "display_name": "My Application",
    "description": "A sample application",
    "criticality": "medium",
    "maturity_level": "production",
    "labels": [
      {
        "key": "environment",
        "value": "production"
      }
    ],
    "owners": [
      {
        "name": "john.doe",
        "type": "user"
      }
    ],
    "timestamp": 1640995200000
  },
  "subscription_key": "test",
  "jpd_origin": "https://apptrustswampup.jfrog.io",
  "source": "jfrog/saharb",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Application update started

This webhook is triggered when the process of updating an existing application starts.

{
  "domain": "app_trust",
  "event_type": "application_update_started",
  "data": {
    "application_key": "my-app",
    "project_key": "my-project",
    "display_name": "My Application",
    "description": "A sample application",
    "criticality": "medium",
    "maturity_level": "production",
    "labels": [
      {
        "key": "environment",
        "value": "production"
      }
    ],
    "owners": [
      {
        "name": "john.doe",
        "type": "user"
      }
    ],
    "timestamp": 1640995200000
  },
  "subscription_key": "test",
  "jpd_origin": "https://apptrustswampup.jfrog.io",
  "source": "jfrog/saharb",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Application update completed

This webhook is triggered when the process of updating an existing application is completed.

{
  "domain": "app_trust",
  "event_type": "application_update_completed",
  "data": {
    "application_key": "my-app",
    "project_key": "my-project",
    "display_name": "My Application",
    "description": "A sample application",
    "criticality": "medium",
    "maturity_level": "production",
    "labels": [
      {
        "key": "environment",
        "value": "production"
      }
    ],
    "owners": [
      {
        "name": "john.doe",
        "type": "user"
      }
    ],
    "timestamp": 1640995200000
  },
  "subscription_key": "test",
  "jpd_origin": "https://apptrustswampup.jfrog.io",
  "source": "jfrog/saharb",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Application update failed

This webhook is triggered when the process of updating an existing application fails.

{
  "domain": "app_trust",
  "event_type": "application_update_failed",
  "data": {
    "application_key": "my-app",
    "project_key": "my-project",
    "display_name": "My Application",
    "description": "A sample application",
    "criticality": "medium",
    "maturity_level": "production",
    "labels": [
      {
        "key": "environment",
        "value": "production"
      }
    ],
    "owners": [
      {
        "name": "john.doe",
        "type": "user"
      }
    ],
    "timestamp": 1640995200000
  },
  "subscription_key": "test",
  "jpd_origin": "https://apptrustswampup.jfrog.io",
  "source": "jfrog/saharb",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Application deletion started

This webhook is triggered when application deletion starts.

{
  "domain": "app_trust",
  "event_type": "application_deletion_started",
  "data": {
    "application_key": "my-app",
    "project_key": "my-project",
    "display_name": "My Application",
    "description": "A sample application",
    "criticality": "medium",
    "maturity_level": "production",
    "labels": [
      {
        "key": "environment",
        "value": "production"
      }
    ],
    "owners": [
      {
        "name": "john.doe",
        "type": "user"
      }
    ],
    "timestamp": 1640995200000
  },
  "subscription_key": "test",
  "jpd_origin": "https://apptrustswampup.jfrog.io",
  "source": "jfrog/saharb",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Application deletion completed

This webhook is triggered when application deletion is completed.

{
  "domain": "app_trust",
  "event_type": "application_deletion_completed",
  "data": {
    "application_key": "my-app",
    "project_key": "my-project",
    "display_name": "My Application",
    "description": "A sample application",
    "criticality": "medium",
    "maturity_level": "production",
    "labels": [
      {
        "key": "environment",
        "value": "production"
      }
    ],
    "owners": [
      {
        "name": "john.doe",
        "type": "user"
      }
    ],
    "timestamp": 1640995200000
  },
  "subscription_key": "test",
  "jpd_origin": "https://apptrustswampup.jfrog.io",
  "source": "jfrog/saharb",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Application deletion failed

This webhook is triggered when application deletion fails.

{
  "domain": "app_trust",
  "event_type": "application_deletion_failed",
  "data": {
    "application_key": "my-app",
    "project_key": "my-project",
    "display_name": "My Application",
    "description": "A sample application",
    "criticality": "medium",
    "maturity_level": "production",
    "labels": [
      {
        "key": "environment",
        "value": "production"
      }
    ],
    "owners": [
      {
        "name": "john.doe",
        "type": "user"
      }
    ],
    "timestamp": 1640995200000
  },
  "subscription_key": "test",
  "jpd_origin": "https://apptrustswampup.jfrog.io",
  "source": "jfrog/saharb",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Version creation started

This webhook is triggered when the process of creating an application version starts. You can specify the application and the version.

{
  "domain": "app_trust",
  "event_type": "version_creation_started",
  "data": {
    "application_version": "1.0.0",
    "application_key": "my-app"
  },
  "subscription_key": "test",
  "source": "jfrog/admin",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Version creation completed

This webhook is triggered when application version creation is completed. You can specify the application and the version.

{
  "domain": "app_trust",
  "event_type": "version_creation_completed",
  "data": {
    "application_version": "1.0.0",
    "application_key": "my-app"
  },
  "subscription_key": "test",
  "source": "jfrog/admin",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Version creation failed

This webhook is triggered when application version creation fails. You can specify the application and the version.

{
  "domain": "app_trust",
  "event_type": "version_creation_failed",
  "data": {
    "application_version": "1.0.0",
    "application_key": "my-app"
  },
  "subscription_key": "test",
  "source": "jfrog/admin",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Version promotion started

This webhook is triggered when the process of promoting an application version starts. You can specify the application and the version.

{
  "domain": "app_trust",
  "event_type": "version_promotion_started",
  "data": {
    "application_version": "1.0.0",
    "application_key": "my-app",
    "stage": "qa"
  },
  "subscription_key": "test",
  "source": "jfrog/admin",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Version promotion completed

This webhook is triggered when the process of promoting an application version is completed. You can specify the application and the version.

{
  "domain": "app_trust",
  "event_type": "version_promotion_completed",
  "data": {
    "application_version": "1.0.0",
    "application_key": "my-app",
    "stage": "qa"
  },
  "subscription_key": "test",
  "source": "jfrog/admin",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Version promotion failed

This webhook is triggered when the process of promoting an application version fails. You can specify the application and the version.

{
  "domain": "app_trust",
  "event_type": "version_promotion_failed",
  "data": {
    "application_version": "1.0.0",
    "application_key": "my-app",
    "stage": "qa"
  },
  "subscription_key": "test",
  "source": "jfrog/admin",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Version release started

This webhook is triggered when the release of an application version starts. You can specify the application and the version.

{
  "domain": "app_trust",
  "event_type": "release_started",
  "data": {
    "application_version": "1.0.0",
    "application_key": "my-app",
    "stage": "prod"
  },
  "subscription_key": "test",
  "source": "jfrog/admin",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Version release completed

This webhook is triggered when the release of an application version is completed. You can specify the application and the version.

{
  "domain": "app_trust",
  "event_type": "release_completed",
  "data": {
    "application_version": "1.0.0",
    "application_key": "my-app",
    "stage": "prod"
  },
  "subscription_key": "test",
  "source": "jfrog/admin",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}

Event: Version release failed

This webhook is triggered when the release of an application version fails. You can specify the application and the version.

{
  "domain": "app_trust",
  "event_type": "release_failed",
  "data": {
    "application_version": "1.0.0",
    "application_key": "my-app",
    "stage": "prod"
  },
  "subscription_key": "test",
  "source": "jfrog/admin",
  "userContext": {
    "id": "johndoe",
    "isToken": false,
    "realm": "internal"
  }
}


Did this page help you?