1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/kanboard_ynh.git synced 2024-09-03 19:36:17 +02:00
kanboard_ynh/sources/doc/api-link-procedures.markdown
2016-01-24 17:50:52 +01:00

470 lines
7.2 KiB
Markdown

API Link Procedures
===================
## getAllLinks
- Purpose: **Get the list of possible relations between tasks**
- Parameters: none
- Result on success: **List of links**
- Result on failure: **false**
Request example:
```json
{
"jsonrpc": "2.0",
"method": "getAllLinks",
"id": 113057196
}
```
Response example:
```json
{
"jsonrpc": "2.0",
"id": 113057196,
"result": [
{
"id": "1",
"label": "relates to",
"opposite_id": "0"
},
{
"id": "2",
"label": "blocks",
"opposite_id": "3"
},
{
"id": "3",
"label": "is blocked by",
"opposite_id": "2"
},
{
"id": "4",
"label": "duplicates",
"opposite_id": "5"
},
{
"id": "5",
"label": "is duplicated by",
"opposite_id": "4"
},
{
"id": "6",
"label": "is a child of",
"opposite_id": "7"
},
{
"id": "7",
"label": "is a parent of",
"opposite_id": "6"
},
{
"id": "8",
"label": "targets milestone",
"opposite_id": "9"
},
{
"id": "9",
"label": "is a milestone of",
"opposite_id": "8"
},
{
"id": "10",
"label": "fixes",
"opposite_id": "11"
},
{
"id": "11",
"label": "is fixed by",
"opposite_id": "10"
}
]
}
```
## getOppositeLinkId
- Purpose: **Get the opposite link id of a task link**
- Parameters:
- **link_id** (integer, required)
- Result on success: **link_id**
- Result on failure: **false**
Request example:
```json
{
"jsonrpc": "2.0",
"method": "getOppositeLinkId",
"id": 407062448,
"params": [
2
]
}
```
Response example:
```json
{
"jsonrpc": "2.0",
"id": 407062448,
"result": "3"
}
```
## getLinkByLabel
- Purpose: **Get a link by label**
- Parameters:
- **label** (integer, required)
- Result on success: **link properties**
- Result on failure: **false**
Request example:
```json
{
"jsonrpc": "2.0",
"method": "getLinkByLabel",
"id": 1796123316,
"params": [
"blocks"
]
}
```
Response example:
```json
{
"jsonrpc": "2.0",
"id": 1796123316,
"result": {
"id": "2",
"label": "blocks",
"opposite_id": "3"
}
}
```
## getLinkById
- Purpose: **Get a link by id**
- Parameters:
- **link_id** (integer, required)
- Result on success: **link properties**
- Result on failure: **false**
Request example:
```json
{
"jsonrpc": "2.0",
"method": "getLinkById",
"id": 1190238402,
"params": [
4
]
}
```
Response example:
```json
{
"jsonrpc": "2.0",
"id": 1190238402,
"result": {
"id": "4",
"label": "duplicates",
"opposite_id": "5"
}
}
```
## createLink
- Purpose: **Create a new task relation**
- Parameters:
- **label** (integer, required)
- **opposite_label** (integer, optional)
- Result on success: **link_id**
- Result on failure: **false**
Request example:
```json
{
"jsonrpc": "2.0",
"method": "createLink",
"id": 1040237496,
"params": [
"foo",
"bar"
]
}
```
Response example:
```json
{
"jsonrpc": "2.0",
"id": 1040237496,
"result": 13
}
```
## updateLink
- Purpose: **Update a link**
- Parameters:
- **link_id** (integer, required)
- **opposite_link_id** (integer, required)
- **label** (string, required)
- Result on success: **true**
- Result on failure: **false**
Request example:
```json
{
"jsonrpc": "2.0",
"method": "updateLink",
"id": 2110446926,
"params": [
"14",
"12",
"boo"
]
}
```
Response example:
```json
{
"jsonrpc": "2.0",
"id": 2110446926,
"result": true
}
```
## removeLink
- Purpose: **Remove a link**
- Parameters:
- **link_id** (integer, required)
- Result on success: **true**
- Result on failure: **false**
Request example:
```json
{
"jsonrpc": "2.0",
"method": "removeLink",
"id": 2136522739,
"params": [
"14"
]
}
```
Response example:
```json
{
"jsonrpc": "2.0",
"id": 2136522739,
"result": true
}
```
## createTaskLink
- Purpose: **Create a link between two tasks**
- Parameters:
- **task_id** (integer, required)
- **opposite_task_id** (integer, required)
- **link_id** (integer, required)
- Result on success: **task_link_id**
- Result on failure: **false**
Request example:
```json
{
"jsonrpc": "2.0",
"method": "createTaskLink",
"id": 509742912,
"params": [
2,
3,
1
]
}
```
Response example:
```json
{
"jsonrpc": "2.0",
"id": 509742912,
"result": 1
}
```
## updateTaskLink
- Purpose: **Update task link**
- Parameters:
- **task_link_id** (integer, required)
- **task_id** (integer, required)
- **opposite_task_id** (integer, required)
- **link_id** (integer, required)
- Result on success: **true**
- Result on failure: **false**
Request example:
```json
{
"jsonrpc": "2.0",
"method": "updateTaskLink",
"id": 669037109,
"params": [
1,
2,
4,
2
]
}
```
Response example:
```json
{
"jsonrpc": "2.0",
"id": 669037109,
"result": true
}
```
## getTaskLinkById
- Purpose: **Get a task link**
- Parameters:
- **task_link_id** (integer, required)
- Result on success: **task link properties**
- Result on failure: **false**
Request example:
```json
{
"jsonrpc": "2.0",
"method": "getTaskLinkById",
"id": 809885202,
"params": [
1
]
}
```
Response example:
```json
{
"jsonrpc": "2.0",
"id": 809885202,
"result": {
"id": "1",
"link_id": "1",
"task_id": "2",
"opposite_task_id": "3"
}
}
```
## getAllTaskLinks
- Purpose: **Get all links related to a task**
- Parameters:
- **task_id** (integer, required)
- Result on success: **list of task link**
- Result on failure: **false**
Request example:
```json
{
"jsonrpc": "2.0",
"method": "getAllTaskLinks",
"id": 810848359,
"params": [
2
]
}
```
Response example:
```json
{
"jsonrpc": "2.0",
"id": 810848359,
"result": [
{
"id": "1",
"task_id": "3",
"label": "relates to",
"title": "B",
"is_active": "1",
"project_id": "1",
"task_time_spent": "0",
"task_time_estimated": "0",
"task_assignee_id": "0",
"task_assignee_username": null,
"task_assignee_name": null,
"column_title": "Backlog"
}
]
}
```
## removeTaskLink
- Purpose: **Remove a link between two tasks**
- Parameters:
- **task_link_id** (integer, required)
- Result on success: **true**
- Result on failure: **false**
Request example:
```json
{
"jsonrpc": "2.0",
"method": "removeTaskLink",
"id": 473028226,
"params": [
1
]
}
```
Response example:
```json
{
"jsonrpc": "2.0",
"id": 473028226,
"result": true
}
```