{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "TaskDef",
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the task definition"
},
"description": {
"type": "string",
"description": "Description of the task"
},
"retryCount": {
"type": "integer",
"description": "Number of retries"
},
"retryLogic": {
"type": "string",
"description": "Retry logic"
},
"retryDelaySeconds": {
"type": "integer",
"description": "Delay between retries in seconds"
},
"timeoutSeconds": {
"type": "integer",
"description": "Task execution timeout in seconds"
},
"timeoutPolicy": {
"type": "string",
"description": "Timeout policy"
},
"responseTimeoutSeconds": {
"type": "integer",
"description": "Time to wait for worker to respond after polling"
},
"pollTimeoutSeconds": {
"type": "integer",
"description": "Time to wait when polling for task"
},
"concurrentExecLimit": {
"type": "integer",
"description": "Concurrent execution limit for the task"
},
"rateLimitPerFrequency": {
"type": "integer",
"description": "Rate limit per frequency"
},
"rateLimitFrequencyInSeconds": {
"type": "integer",
"description": "Rate limit frequency window in seconds"
},
"ownerEmail": {
"type": "string",
"description": "Email of the task definition owner"
},
"inputKeys": {
"type": "array",
"description": "Expected input keys"
},
"outputKeys": {
"type": "array",
"description": "Expected output keys"
},
"inputTemplate": {
"type": "object",
"description": "Default input template"
},
"createdBy": {
"type": "string",
"description": "Creator of the task definition"
},
"createTime": {
"type": "integer",
"description": "Creation timestamp"
},
"updatedBy": {
"type": "string",
"description": "Last updater"
},
"updateTime": {
"type": "integer",
"description": "Last update timestamp"
}
}
}