50 lines
1.7 KiB
JSON
50 lines
1.7 KiB
JSON
{
|
|
"name": "hermes_workflows_crud",
|
|
"table": "hermes_workflows",
|
|
"operations": {
|
|
"create": {
|
|
"method": "POST",
|
|
"url": "/api/hermes/workflows",
|
|
"description": "Create a new workflow definition for current user"
|
|
},
|
|
"read": {
|
|
"method": "GET",
|
|
"url": "/api/hermes/workflows/{id}",
|
|
"description": "Read a workflow by ID (user-isolated)"
|
|
},
|
|
"update": {
|
|
"method": "PUT",
|
|
"url": "/api/hermes/workflows/{id}",
|
|
"description": "Update a workflow definition (user-isolated)"
|
|
},
|
|
"delete": {
|
|
"method": "DELETE",
|
|
"url": "/api/hermes/workflows/{id}",
|
|
"description": "Delete a workflow definition (user-isolated)"
|
|
},
|
|
"list": {
|
|
"method": "GET",
|
|
"url": "/api/hermes/workflows",
|
|
"description": "List all workflows for current user with optional filtering"
|
|
},
|
|
"search": {
|
|
"method": "GET",
|
|
"url": "/api/hermes/workflows/search",
|
|
"description": "Search workflows by name or description (user-isolated)"
|
|
}
|
|
},
|
|
"fields": {
|
|
"id": {"type": "str", "required": true},
|
|
"user_id": {"type": "str", "required": true, "auto": "current_user_id"},
|
|
"name": {"type": "str", "required": true},
|
|
"description": {"type": "text", "required": false},
|
|
"workflow_type": {"type": "str", "required": false, "default": "sequential"},
|
|
"max_concurrent_tasks": {"type": "int", "required": false, "default": 3},
|
|
"timeout_seconds": {"type": "int", "required": false, "default": 1800},
|
|
"retry_count": {"type": "int", "required": false, "default": 2},
|
|
"status": {"type": "str", "required": false, "default": "active"}
|
|
},
|
|
"filters": {
|
|
"user_id": {"auto": "current_user_id"}
|
|
}
|
|
} |