JFrog Worker
Represents a serverless worker in the JFrog Platform that extends platform functionality through synchronized hooks and automation. Workers are TypeScript-based functions that react to JFrog Platform events in a secure, isolated execution environment.
Properties
| Name | Type | Description |
|---|---|---|
| key | string | Unique worker key identifier |
| description | string | Human-readable description of the worker's purpose |
| enabled | boolean | Whether the worker is currently active |
| source_code | string | TypeScript source code for the worker |
| action | string | The JFrog Platform event that triggers this worker |
| filter_criteria | object | Criteria for filtering which events trigger the worker |
| secrets | array | Encrypted secrets accessible to the worker at runtime |
| created | string | Worker creation timestamp |
| modified | string | Last modification timestamp |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://jfrog.com/schemas/worker",
"title": "JFrog Worker",
"description": "Represents a serverless worker in the JFrog Platform that extends platform functionality through synchronized hooks and automation. Workers are TypeScript-based functions that react to JFrog Platform events in a secure, isolated execution environment.",
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Unique worker key identifier",
"examples": [
"my-download-validator",
"artifact-scanner"
]
},
"description": {
"type": "string",
"description": "Human-readable description of the worker's purpose"
},
"enabled": {
"type": "boolean",
"description": "Whether the worker is currently active",
"default": true
},
"source_code": {
"type": "string",
"description": "TypeScript source code for the worker"
},
"action": {
"type": "string",
"description": "The JFrog Platform event that triggers this worker",
"enum": [
"BEFORE_DOWNLOAD",
"AFTER_DOWNLOAD",
"BEFORE_UPLOAD",
"AFTER_CREATE",
"AFTER_BUILD_INFO_SAVE",
"AFTER_MOVE",
"AFTER_COPY",
"BEFORE_DELETE",
"BEFORE_CREATE_TOKEN",
"GENERIC_EVENT"
]
},
"filter_criteria": {
"type": "object",
"description": "Criteria for filtering which events trigger the worker",
"properties": {
"artifact_filter_criteria": {
"type": "object",
"properties": {
"repo_keys": {
"type": "array",
"description": "Repository keys to scope the worker to",
"items": {
"type": "string"
}
}
}
}
}
},
"secrets": {
"type": "array",
"description": "Encrypted secrets accessible to the worker at runtime",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Secret key name"
},
"value": {
"type": "string",
"description": "Secret value (write-only, not returned in GET)"
}
},
"required": [
"key"
]
}
},
"created": {
"type": "string",
"format": "date-time",
"description": "Worker creation timestamp"
},
"modified": {
"type": "string",
"format": "date-time",
"description": "Last modification timestamp"
}
},
"required": [
"key",
"source_code",
"action"
]
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-schemas/jfrog-worker"
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.