Automatic Actions API Procedures
getAvailableActions
- Purpose: Get list of available automatic actions
- Parameters: none
- Result on success: list of actions
- Result on failure: false
Request example:
{
"jsonrpc": "2.0",
"method": "getAvailableActions",
"id": 1217735483
}
Response example:
{
"jsonrpc": "2.0",
"id": 1217735483,
"result": {
"\Kanboard\Action\TaskLogMoveAnotherColumn": "Add a comment logging moving the task between columns",
"\Kanboard\Action\TaskAssignColorUser": "Assign a color to a specific user",
"\Kanboard\Action\TaskAssignColorColumn": "Assign a color when the task is moved to a specific column",
"\Kanboard\Action\TaskAssignCategoryColor": "Assign automatically a category based on a color",
"\Kanboard\Action\TaskAssignColorCategory": "Assign automatically a color based on a category",
"\Kanboard\Action\TaskAssignSpecificUser": "Assign the task to a specific user",
"\Kanboard\Action\TaskAssignCurrentUser": "Assign the task to the person who does the action",
"\Kanboard\Action\TaskUpdateStartDate": "Automatically update the start date",
"\Kanboard\Action\TaskAssignUser": "Change the assignee based on an external username",
"\Kanboard\Action\TaskAssignCategoryLabel": "Change the category based on an external label",
"\Kanboard\Action\TaskClose": "Close a task",
"\Kanboard\Action\CommentCreation": "Create a comment from an external provider",
"\Kanboard\Action\TaskCreation": "Create a task from an external provider",
"\Kanboard\Action\TaskDuplicateAnotherProject": "Duplicate the task to another project",
"\Kanboard\Action\TaskMoveColumnAssigned": "Move the task to another column when assigned to a user",
"\Kanboard\Action\TaskMoveColumnUnAssigned": "Move the task to another column when assignee is cleared",
"\Kanboard\Action\TaskMoveAnotherProject": "Move the task to another project",
"\Kanboard\Action\TaskOpen": "Open a task"
}
}
getAvailableActionEvents
- Purpose: Get list of available events for actions
- Parameters: none
- Result on success: list of events
- Result on failure: false
Request example:
{
"jsonrpc": "2.0",
"method": "getAvailableActionEvents",
"id": 2116665643
}
Response example:
{
"jsonrpc": "2.0",
"id": 2116665643,
"result": {
"bitbucket.webhook.commit": "Bitbucket commit received",
"task.close": "Closing a task",
"github.webhook.commit": "Github commit received",
"github.webhook.issue.assignee": "Github issue assignee change",
"github.webhook.issue.closed": "Github issue closed",
"github.webhook.issue.commented": "Github issue comment created",
"github.webhook.issue.label": "Github issue label change",
"github.webhook.issue.opened": "Github issue opened",
"github.webhook.issue.reopened": "Github issue reopened",
"gitlab.webhook.commit": "Gitlab commit received",
"gitlab.webhook.issue.closed": "Gitlab issue closed",
"gitlab.webhook.issue.opened": "Gitlab issue opened",
"task.move.column": "Move a task to another column",
"task.open": "Open a closed task",
"task.assignee_change": "Task assignee change",
"task.create": "Task creation",
"task.create_update": "Task creation or modification",
"task.update": "Task modification"
}
}
getCompatibleActionEvents
- Purpose: Get list of events compatible with an action
- Parameters:
- action_name (string, required)
- Result on success: list of events
- Result on failure: false
Request example:
{
"jsonrpc": "2.0",
"method": "getCompatibleActionEvents",
"id": 899370297,
"params": [
"\\Kanboard\\Action\\TaskClose"
]
}
Response example:
{
"jsonrpc": "2.0",
"id": 899370297,
"result": {
"bitbucket.webhook.commit": "Bitbucket commit received",
"github.webhook.commit": "Github commit received",
"github.webhook.issue.closed": "Github issue closed",
"gitlab.webhook.commit": "Gitlab commit received",
"gitlab.webhook.issue.closed": "Gitlab issue closed",
"task.move.column": "Move a task to another column"
}
}
getActions
- Purpose: Get list of actions for a project
- Parameters:
- project_id (integer, required)
- Result on success: list of actions properties
- Result on failure: false
Request example:
{
"jsonrpc": "2.0",
"method": "getActions",
"id": 1433237746,
"params": [
"1"
]
}
Response example:
{
"jsonrpc": "2.0",
"id": 1433237746,
"result": [
{
"id" : "13",
"project_id" : "2",
"event_name" : "task.move.column",
"action_name" : "\Kanboard\Action\TaskAssignSpecificUser",
"params" : {
"column_id" : "5",
"user_id" : "1"
}
}
]
}
createAction
- Purpose: Create an action
- Parameters:
- project_id (integer, required)
- event_name (string, required)
- action_name (string, required)
- params (key/value parameters, required)
- Result on success: action_id
- Result on failure: false
Request example:
{
"jsonrpc": "2.0",
"method": "createAction",
"id": 1433237746,
"params": {
"project_id" : "2",
"event_name" : "task.move.column",
"action_name" : "\\Kanboard\\Action\\TaskAssignSpecificUser",
"params" : {
"column_id" : "3",
"user_id" : "2"
}
}
}
Response example:
{
"jsonrpc": "2.0",
"id": 1433237746,
"result": 14
}
removeAction
- Purpose: Remove an action
- Parameters:
- action_id (integer, required)
- Result on success: true
- Result on failure: false
Request example:
{
"jsonrpc": "2.0",
"method": "removeAction",
"id": 1510741671,
"params": [
1
]
}
Response example:
{
"jsonrpc": "2.0",
"id": 1510741671,
"result": true
}