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-project-procedures.markdown
2015-12-29 01:24:09 +01:00

8.5 KiB

API Project Procedures

createProject

  • Purpose: Create a new project
  • Parameters:
    • name (string, required)
    • description (string, optional)
  • Result on success: project_id
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "createProject",
    "id": 1797076613,
    "params": {
        "name": "PHP client"
    }
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 1797076613,
    "result": 2
}

getProjectById

  • Purpose: Get project information
  • Parameters:
    • project_id (integer, required)
  • Result on success: project properties
  • Result on failure: null

Request example:

{
    "jsonrpc": "2.0",
    "method": "getProjectById",
    "id": 226760253,
    "params": {
        "project_id": 1
    }
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 226760253,
    "result": {
        "id": "1",
        "name": "API test",
        "is_active": "1",
        "token": "",
        "last_modified": "1436119135",
        "is_public": "0",
        "is_private": "0",
        "is_everybody_allowed": "0",
        "default_swimlane": "Default swimlane",
        "show_default_swimlane": "1",
        "description": "test",
        "identifier": "",
        "url": {
            "board": "http:\/\/127.0.0.1:8000\/?controller=board&action=show&project_id=1",
            "calendar": "http:\/\/127.0.0.1:8000\/?controller=calendar&action=show&project_id=1",
            "list": "http:\/\/127.0.0.1:8000\/?controller=listing&action=show&project_id=1"
        }
    }
}

getProjectByName

  • Purpose: Get project information
  • Parameters:
    • name (string, required)
  • Result on success: project properties
  • Result on failure: null

Request example:

{
    "jsonrpc": "2.0",
    "method": "getProjectByName",
    "id": 1620253806,
    "params": {
        "name": "Test"
    }
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 1620253806,
    "result": {
        "id": "1",
        "name": "Test",
        "is_active": "1",
        "token": "",
        "last_modified": "1436119135",
        "is_public": "0",
        "is_private": "0",
        "is_everybody_allowed": "0",
        "default_swimlane": "Default swimlane",
        "show_default_swimlane": "1",
        "description": "test",
        "identifier": "",
        "url": {
            "board": "http:\/\/127.0.0.1:8000\/?controller=board&action=show&project_id=1",
            "calendar": "http:\/\/127.0.0.1:8000\/?controller=calendar&action=show&project_id=1",
            "list": "http:\/\/127.0.0.1:8000\/?controller=listing&action=show&project_id=1"
        }
    }
}

getAllProjects

  • Purpose: Get all available projects
  • Parameters:
    • none
  • Result on success: List of projects
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "getAllProjects",
    "id": 2134420212
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 2134420212,
    "result": [
        {
            "id": "1",
            "name": "API test",
            "is_active": "1",
            "token": "",
            "last_modified": "1436119570",
            "is_public": "0",
            "is_private": "0",
            "is_everybody_allowed": "0",
            "default_swimlane": "Default swimlane",
            "show_default_swimlane": "1",
            "description": null,
            "identifier": "",
            "url": {
                "board": "http:\/\/127.0.0.1:8000\/?controller=board&action=show&project_id=1",
                "calendar": "http:\/\/127.0.0.1:8000\/?controller=calendar&action=show&project_id=1",
                "list": "http:\/\/127.0.0.1:8000\/?controller=listing&action=show&project_id=1"
            }
        }
    ]
}

updateProject

  • Purpose: Update a project
  • Parameters:
    • id (integer, required)
    • name (string, required)
    • description (string, optional)
  • Result on success: true
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "updateProject",
    "id": 1853996288,
    "params": {
        "id": 1,
        "name": "PHP client update"
    }
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 1853996288,
    "result": true
}

removeProject

  • Purpose: Remove a project
  • Parameters: project_id (integer, required)
  • Result on success: true
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "removeProject",
    "id": 46285125,
    "params": {
        "project_id": "2"
    }
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 46285125,
    "result": true
}

enableProject

  • Purpose: Enable a project
  • Parameters:
    • project_id (integer, required)
  • Result on success: true
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "enableProject",
    "id": 1775494839,
    "params": [
        "1"
    ]
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 1775494839,
    "result": true
}

disableProject

  • Purpose: Disable a project
  • Parameters:
    • project_id (integer, required)
  • Result on success: true
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "disableProject",
    "id": 1734202312,
    "params": [
        "1"
    ]
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 1734202312,
    "result": true
}

enableProjectPublicAccess

  • Purpose: Enable public access for a given project
  • Parameters:
    • project_id (integer, required)
  • Result on success: true
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "enableProjectPublicAccess",
    "id": 103792571,
    "params": [
        "1"
    ]
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 103792571,
    "result": true
}

disableProjectPublicAccess

  • Purpose: Disable public access for a given project
  • Parameters:
    • project_id (integer, required)
  • Result on success: true
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "disableProjectPublicAccess",
    "id": 942472945,
    "params": [
        "1"
    ]
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 942472945,
    "result": true
}

getProjectActivity

  • Purpose: Get activity stream for a project
  • Parameters:
    • project_id (integer, required)
  • Result on success: List of events
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "getProjectActivity",
    "id": 942472945,
    "params": [
        "project_id": 1
    ]
}

getProjectActivities

  • Purpose: Get Activityfeed for Project(s)
  • Parameters:
    • project_ids (integer array, required)
  • Result on success: List of events
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "getProjectActivities",
    "id": 942472945,
    "params": [
        "project_ids": [1,2]
    ]
}

getMembers

  • Purpose: Get members of a project
  • Parameters:
    • project_id (integer, required)
  • Result on success: Key/value pair of user_id and username
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "getMembers",
    "id": 1944388643,
    "params": [
        1
    ]
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 1944388643,
    "result": {
        "1": "user1",
        "2": "user2",
        "3": "user3"
    }
}

revokeUser

  • Purpose: Revoke user access for a given project
  • Parameters:
    • project_id (integer, required)
    • user_id (integer, required)
  • Result on success: true
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "revokeUser",
    "id": 251218350,
    "params": [
        1,
        2
    ]
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 251218350,
    "result": true
}

allowUser

  • Purpose: Grant user access for a given project
  • Parameters:
    • project_id (integer, required)
    • user_id (integer, required)
  • Result on success: true
  • Result on failure: false

Request example:

{
    "jsonrpc": "2.0",
    "method": "allowUser",
    "id": 2111451404,
    "params": [
        1,
        2
    ]
}

Response example:

{
    "jsonrpc": "2.0",
    "id": 2111451404,
    "result": true
}