API

Finden Sie heraus, wie Sie die Kanbanize Restful API nutzen können.

General information

To use the Kanbanize API, you need to send an https POST request to the following address: https://<subdomain>.kanbanize.com/index.php/api/kanbanize/<function>

Where:
<subdomain> is the subdomain part for your account.
<function> is one of the following:

Login

Required
email Your email address
pass Your password
Optional
n/a
Output
email Your email address
pass Your password
realname Your name
companyname Company name
apikey Your API key.

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/login/
Request body: {"email": "test@test.com", "pass":"test"}

Get Projects and Boards

Required
n/a
Optional
n/a
Output
projects Array of the projects.
projects[][name] The name of the project.
projects[][id] The ID of the project.
project[][boards] Array of details for any boards in current project ( name, id )

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/get_projects_and_boards/

Get Board Activities

Required
boardid The ID of the board. You can see the board ID on the dashboard screen, in the upper right corner of each board.
fromdate The date after which the activities of interest happened. Accepts the following formats: ‘2012-05-05′, ’10 September 2012’.
todate The date before which the activities of interest happened. Accepts the following formats: ‘2012-05-05′, ’10 September 2012’.
Optional
page Default is 1
resultsperpage Default is 30
author Default is ALL
eventtype Options : Transitions, Updates, Comments, Blocks. Default is All
textformat Options: “plain” (default) and “html”. If the plain text format is used, the HTML tags are stripped from the history details.
Output
allactivities The number of all activities for the corresponding time window specified by the fromdate and todate parameters.
page The current page.
activities Array containing the board activities.
activities[][author] Who performed the action.
activities[][event] Type of the event (Task moved, Task blocked, Task archived etc.)
activities[][text] History details.
activities[][date] When the event happened.
activities[][taskid] The id of the task which was updated/moved/blocked, etc.

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/get_board_activities/ Request body: {"boardid":"2", "fromdate":"2012-08-05", "todate":"2017-08-05", "page":"2"}


https://<subdomain>.kanbanize.com/index.php/api/kanbanize/get_board_activities/ Request body: {"boardid":"2", "fromdate":"2012-08-05", "todate":"2017-08-05", "page":"3", "eventtype":"Comments"}

Get Board Structure

Required
boardid The ID of the board whose structure you want to get. You can see the board ID on the dashboard screen, in the upper right corner of each board.
Optional
n/a
Output
columns Array containing the board columns (only the columns on last level are returned)
columns[][position] The position of the column.
columns[][lcname] The name of the column.
columns[][description] The description of the column or swimlane.
lanes Array containing the board swimnales
lanes[][lcname] The name of the swimlane.
lanes[][color] The color of the swimlane.
lanes[][description] The description of the column or swimlane.

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/get_board_structure/
Request body: {"boardid":"2"}

Get Full Board Structure

Required
boardid The ID of the board the structure of which you want to get. You can see the board ID on the dashboard screen, in the upper right corner of each board.
Optional
n/a
Output
columns Array containing the board columns.
columns[][position] The position of the column.
columns[][lcname] The name of the column.
columns[][description] The description of the column or swimlane.
columns[][path] Unique identifier which contains the id of the column with all its parent columns. E.g. progress_17_1478 means that the column id is 1478, its parent is the column with id 17 and the parent area is IN PROGRESS.
columns[][description] The description of the column or swimlane.
columns[][lcid] Lane/Column ID. This is the ID of the column, which is the last part of the path parameter described above.
columns[][children[]]* If the column has sub-columns, they are returned in the children array recursively.
lanes Array containing the board swimnales.
lanes[][position] The position of the swimlane.
lanes[][lcname] The name of the swimlane.
lanes[][path] Unique identifier of the swimlane which concatenates the string “lane_” concatenated with the swimlane ID.
lanes[][color] The color of the swimlane.
lanes[][description] The description of the column or swimlane.
lanes[][lcid] Lane/Column ID. This is the ID of the swimlane, which is the last part of the path parameter described above.

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/get_full_board_structure/
Request body: {"boardid":"2"}

Get Board Settings

Required
boardid The ID of the board the structure of which you want to get. You can see the board ID on the dashboard screen, in the upper right corner of each board.
Optional
n/a

Array with the definitions of all custom fields assigned to the board.

Output
usernames Array containing the usernames of the board members.
avatars Associative array containing the URLs to the avatars of the board members.
templates Array containing the templates available to this board.
types Array containing the types available to this board.
customfields Array containing the definitions of all custom fields assigned to the board.

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/get_board_settings/
Request body: {"boardid":"2"}

Create New Task

If the user identified by the API key has pre-configured default column or swimlane for the specified board, and no ‘column’ or ‘lane’ parameter is supplied in the request, the task will be created in the column and swimlane specified in the default board settings.

If no default column or swimlane are configured for the specified board and no ‘column’ or ‘lane’ parameters are supplied in the request, the task will be created into the first swimlane of the Backlog section of the board.

If ‘column’, ‘lane’ and/or ‘position’ parameters are supplied, then a move operation is executed automatically after the creation of the task. The ‘column’ and ‘lane’ parameters effectively override any configurations with respect to where the task is to be created.

Required
boardid The ID of the board whose structure you want to get. You can see the board ID on the dashboard screen, in the upper right corner of each board.
Optional
title Title of the task.
description Description of the task.
priority One of the following: Low, Average, High.
assignee Username of the assignee (must be a valid username).
color Any color code (e.g. #34a97b) without the # character.
size Size of the task.
tags Space separated list of tags.
deadline Deadline in the format: yyyy-mm-dd (e.g. 2011-12-13).
extlink A link in the following format: https://domain.com/resource. This option is only supported when parameters are sent in the request body.
type The name of the type you want to set.
template The name of the template you want to apply. If you specify any property as part of the request, the one specified in the template will be overwritten.
< customfield > The name of the custom field you want to set.
subtasks An array of subtasks.
subtasks[][title] Title of the new subtask.
subtasks[][assignee] An assignee for the subtask (Default:None).
column The name of the column to create the task into (default is Backlog). If column names are not unique, you must specify the full path to the column: topParentColumn.nextParentColumn.columnName.
lane The name of the swimlane to put the newly created task into. If omitted, the task will be placed in the first swimlane.
position The position of the task in the new column/swimlane (zero-based). If omitted, the task will be placed at the bottom of the column.
exceedingreason If you can exceed a limit with a reason, supply it with this parameter. Applicable only if column, lane and/or position are supplied.
returntaskdetails If set to 1 the method will return the details of the created task.
Output
id The ID of the newly created task.
details The details of the newly created task. (Only if returntaskdetails was set)
The format is the same as the output of get_task_details.
movingerror If moving failed, the moving error will be returned here. (Only if column, swimlane and/or position were set).

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/create_new_task/ Request body: {"boardid":"17", "title":"test task", "description":"task description", "priority":"High", "assignee":"mitaka", "color":"FFCC00", "tags":"tag1 tag2", "deadline":"2011-12-13"}

Delete Task

Required
boardid The ID of the board where the task to be deleted is. You can see the board ID on the dashboard screen, in the upper right corner of each board.
taskid The ID of the task to be deleted.
Optional
n/a
Output
status The status of the operation (1 or error).

Example request Do not forget to send a valid header containing your API key

http://<subdomain>.kanbanize.com/index.php/api/kanbanize/delete_task/
Request body: {"boardid":"17", "taskid":"173"}

Get Task Details

Required
boardid The ID of the board where the task is located. You can see the board ID on the dashboard screen, in the upper right corner of each board.
taskid/taskid[] The ID of the task (or an array of task ids) whose details you want to get.
Optional
history Set to “yes” if you want to get history for the task.
comments Set to “yes” if you want to get comments for the task.
event Only applicable if “history” is set to “yes”. Accepts the following events: move, create, update, block, delete, comment, archived, subtask, loggedtime. If the parameter is not set, all of the events will be returned.
textformat Options: “plain” (default) and “html”. If the plain text format is used, the HTML tags are stripped from the task description.
Output
taskid The ID of the task
title Title of the task
description Description of the task
type The task type
assignee Username of the assignee
subtasks Number of subtasks
subtaskscomplete Number of completed subtasks
color Task color
priority Task priority
size Task size
deadline Task deadline in format Day Month (e.g. 01 Aug)
deadlineoriginalformat Task deadline in format yyyy-mm-dd (e.g. 2012-08-01)
extlink Task external link
tags Task tags
leadtime Leadtime in days
blocked Is the task blocked (0 — no/ 1 — yes)
blockedreason Why the task is blocked
subtaskdetails Details of any subtasks (subtask id, subtask assignee, subtask title, subtask date of completion).
comments Details of any comment (author, event, text, date, taskid, commentid).
historydetails Details of task history (eventtype, historyevent, details, author, date, history id).
columnname The name of the column in which the task is located.
lanename The name of the swim-lane in which the task is located.
columnid The ID of the column in which the task is located.
laneid The ID of the swim-lane in which the task is located.
position The position of the card in its current column.
columnpath The full path to the card column in the format: “Column.Subcolumn1.Subcolumn2”. If the task is located in a main column this will be the same as “columnname”.
loggedtime The accumulated logged time of the task in hours.
customfields Array of the custom fields applied to the card
customfields[][fieldid] The id number of the field.
customfields[][name] The name of the field.
customfields[][type] Data type of the custom field <text|date|number|contributor|link|dropdown>.
customfields[][value] The value of the custom field.
customfields[][mandatory] A flag if the field is mandatory <true|false>.
attachments Array with the info about the new file(s) attached to the card.
attachments[][url] A link to the file if it was added from a storage service (Dropbox, Google Drive, etc.).
attachments[][clientName] The name of the file as uploaded by the user.
attachments[][uniqueName] Unique name of the file.
attachments[][fileSize] The size of the file.
attachments[][fileType] The extension of the file.
attachments[][status] Upload status.
workflow The workflow to which the item belongs (0 — cards workflow / 1 — initiatives workflow).

Example request Do not forget to send a valid header containing your API key

http://<subdomain>.kanbanize.com/index.php/api/kanbanize/get_task_details/
Request body: {"boardid":"17", "taskid":"173"}

Get All Tasks

Required
boardid The ID of the board where the tasks are located. You can see the board ID on the dashboard screen, in the upper right corner of each board.
Optional
subtasks Set to “yes” if you want to get subtask details for each task.
comments Set to “yes” if you want to get comments for each task.
container Set to “archive” if you want to get tasks from archive. See the rest optional parameters for archive output details.
fromdate Only applicable with container=”archive”. The date after which the tasks have been archived. Accepts the format: ‘2012-05-05’. Default valuе is ‘1970-01-01’
todate Only applicable with container=”archive”. The date before which the tasks have been archived. Accepts the following format: ‘2012-05-05’. Default valuе is ‘now’
showInitiatives Only applicable with container=”archive”. If this parameter is set to “1” the response will return only initiatives. Otherwise, it will return only tasks.
version Gives the tasks from the specified archive version. The fromdate and todate parameters are ignored.
page Only applicable with container=”archive”. With this parameter you control which page number to get. The method returns 30 tasks per page. If not set, the first 30 values will be returned i.e. “page” = 1.
textformat Options: “plain” (default) and “html”. If the plain text format is used, the HTML tags are stripped from the task description.
column Get only cards from a specific column. This field has higher priority than the section option. If the name of the column is unique, you can specify it alone but if there are more than one columns with that name, you must specify it as ParentColumn.ColumnName
lane Only get cards from that specific lane.
section Get card from a specific board area (backlog, requested, progress, done, archive)
Output
taskid The ID of the task
position The position of the task
type The task type
assignee Username of the assignee
title Title of the task
description Description of the task
subtasks Number of subtasks
subtaskscomplete Number of completed subtasks
color Task color
priority Task priority
size Task size
deadline Task deadline in format Day Month (e.g. 01 Aug)
deadlineoriginalformat Task deadline in format yyyy-mm-dd (e.g. 2012-08-01)
extlink Task external link
tags Task tags
columnid The ID of the column in which the task is located.
laneid The ID of the swim-lane in which the task is located.
workflow The workflow to which the item belongs (0 – cards workflow ) 1 – initiatives workflow).
leadtime Leadtime in days
blocked Is the task blocked (0 – no) 1 – yes)
blockedreason Why the task is blocked
subtaskdetails Details of any subtasks (subtask id, subtask assignee, subtask title, subtask date of completion).
comments Details of any comment (author, event, text, date, taskid).
columnname The name of the column in which the task is located.
lanename The name of the swim-lane in which the task is located.
columnpath The full path to the card column in the format: “Column.Subcolumn1.Subcolumn2”. If the task is located in a main column this will be the same as “columnname”.
loggedtime* The accumulated logged time of the task in hours. *There is a missing letter G, which has not been added on purpose to maintain backwards compatibility.
attachments Array with the info about the new file(s) attached to the card.
attachments[][url] A link to the file if it was added from a storage service (Dropbox, Google Drive, etc.).
attachments[][clientName] The name of the file as uploaded by the user.
attachments[][uniqueName] Unique name of the file.
attachments[][fileSize] The size of the file.
attachments[][fileType] The extension of the file.
attachments[][status] Upload status.

Example request Do not forget to send a valid header containing your API key

http://<subdomain>.kanbanize.com/index.php/api/kanbanize/get_all_tasks/
Request body: {"boardid":"17", "boardid":"17"}

Add Comment

Required
comment The comment to be added.
taskid The ID of the task you want to comment.
Optional
n/a
Output
id ID of the history event
author Author of the comment
date Current date

Example request Do not forget to send a valid header containing your API key

http://<subdomain>.kanbanize.com/index.php/api/kanbanize/add_comment/
Request body: {"taskid":"173", "comment":"this is a test comment"}

Move Task

With this action you can move tasks on the board by specifying the column name and optionally the swim-lane name.

Required
boardid The ID of the board to move the task into. You can see the board ID on the dashboard screen, in the upper right corner of each board.
taskid The ID of the task to move.
Optional
column The name of the column to move the task into. If the name of the column is unique, you can specify it alone, but if there are more than one columns with that name, you must specify it as columnname1 . columnname2 . columnname3.
lane The name of the swim-lane to move the task into. If omitted, the swimlane doesn’t change.
position* The position of the task in the new column (zero-based). If omitted, the task will be placed at the bottom of the column.
exceedingreason If you can exceed a limit with a reason, supply it with this parameter.
Output
status The status of the operation (1 or error).

Example request Do not forget to send a valid header containing your API key

https://>subdomain<.kanbanize.com/index.php/api/kanbanize/move_task/ Request body: {"boardid":"17", "taskid":"24", "column":"MyColumn"}

https://>subdomain<.kanbanize.com/index.php/api/kanbanize/move_task/ Request body: {"boardid":"17", "taskid":"24", "column":"MainColumn.SubColumn.MyColumn"}

https://>subdomain<.kanbanize.com/index.php/api/kanbanize/move_task/ Request body: {"boardid":"17", "taskid":"24", "column":"MainColumn.SubColumn.MyColumn", "lane":"Bugs"}

Edit Task

With this action you can update the task details.

Required
boardid The ID of the board where the task to be edited is located. You can see the board ID on the dashboard screen, in the upper right corner of each board.
taskid The ID of the task to edit.
Optional
title Title of the task
description Description of the task
priority One of the following: Low, Average, High, Critical
assignee Username of the assignee (must be a valid username)
color Any color code (e.g. #34a97b) without the # character in front of the code.
size Size of the task
tags Space separated list of tags
deadline Deadline in the format: yyyy-mm-dd (e.g. 2011-12-13)
extlink A link in the following format: https://domain.com/resource. This option is only supported when parameters are sent in the request body.
type The name of the type you want to set.
< customfield > A custom field to be updated. If the field is not present in the card, it will be automatically assigned with the provided value.
Output
status The status of the operation (1 or error).

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/edit_task/
Request body: {"boardid":"17", "taskid":"24", "title":"My new title", "description":"My new description", "size":"24"}

Block Task

Required
boardid The ID of the board where the task to be blocked/unblocked is located. You can see the board ID on the dashboard screen, in the upper right corner of each board.
taskid The ID of the task.
event Possible valules: ‘block’ – block a task; ‘editblock’ – edit the blocked reason; ‘unblock’ – unblock a task
blockreason Required if event is set to ‘block’ or ‘editblock’
Optional
n/a
Output
status The status of the operation (1 or error).

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/block_task/
Request body: {"boardid":"2", "taskid":"1173", "event":"block", "blockreason":"Reason text"}

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/block_task/
Request body: {"boardid":"2", "taskid":"1173", "event":"unblock"}

Add Subtask

Required
taskparent The ID of the task where the subtask to be created is located.
Optional
title Title of the subtask
assignee Username of the assignee (must be a valid username)
Output
status The ID of the newly created subtask or 0 if an error has occurred.

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/add_subtask/
Request body: {"taskparent":"254", "title":"sample subtask title", "assignee":"myusername"}

Edit Subtask

Required
boardit The ID of the board where the subtask to be edited is located. You can see the board ID on the dashboard screen, in the upper right corner of each board.
subtaskid The ID of the subtask
Optional
title Title of the subtask
assignee Username of the assignee (must be a valid username)
complete Options: 1 or 0. If it`s set to 1 the subtask will be marked as finished, otherwise as unfinished.
Output
status The status of the operation (1 or error).

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/edit_subtask/
Request body: {"boardid":"68", "subtaskid":"673", "title":"new subtask title", "complete":"1"}

Log Time

Required
loggedtime The number of hours you want to add to the task.
taskid The ID of the task or subtask to log time to.
Optional
description Comment about the log time entry.
date Sets the date for which the time is logged. Accepted format is YYYY-MM-DD.
Output
id The id of the log time event.
historyid The id of the event (for internal use).
taskid The id of the task or subtask that has been updated with a log time event.
author The username of the API user who updated the task.
details Message explaining the log time event.
loggedtime The number of hours that have been logged.
issubtask A boolean parameter that shows whether the task is a subtask or not.
title The title of the task that has been updated.
comment The comment that has been added along with the time log.
origindate Timestamp of the event (no timezone applied ).
entrydate Timestamp of the event (timezone applied ).

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/log_time/
Request body: {"taskid":"68", "loggedtime":"673"}

Get Log Time Activities

Required
fromdate The date after which the activities of interest happened. Accepts the following formats: ‘2012-05-05′, ’10 September 2012’.
todate The date before which the activities of interest happened. Accepts the following formats: ‘2012-05-05′, ’10 September 2012’.
Optional
author The user who performed the activities. Default is ALL
Output
author Who performed the action.
date When was the time logged for.
cardid The ID of the card or subtask the time was logged to.
columnname Name of the column the time was logged in.
boardit ID of the board the time was logged in.
loggedinsubtask whether the time was logged in subtask.
loggedtime the number of logged hours.
cardtitle title of the card the time was logged in.
cardtype type of the card the time was logged in.

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/get_log_time_activities/
Request body: {"fromdate": "2018-06-14", "todate": "2018-08-29"}

Get Tasks With Log Time

Required
fromdate The date after which the activities of interest happened. Accepts the following formats: ‘2012-05-05′, ’10 September 2012’.
todate The date before which the activities of interest happened. Accepts the following formats: ‘2012-05-05′, ’10 September 2012’.
Optional
author The user who performed the activities. Default is ALL
boardit The boardid where the cards are located.
Output
taskid The ID of the task
position The position of the card in its current column.
type The task type
assignee Username of the assignee
title Title of the task
description Description of the task
color theTask color
priority Task priority
size Task size
deadline Task deadline in format yyyy-mm-dd (e.g. 2012-08-01)
extlink Task external link
tags Task tags
columnid The ID of the column in which the task is located.
laneid The ID of the swim-lane in which the task is located.
blocked Is the task blocked (0 – no/ 1 – yes)
blockedreason Why the task is blocked
columnname The name of the column in which the task is located.
lanename The name of the swim-lane in which the task is located.
subscribers Watchers of the card.
boardparent The ID of the board where the task is located.
attachments Array with the info about the file(s) attached to the card.
workflow The workflow to which the item belongs (0 – cards workflow / 1 – initiatives workflow).
loggedtime An array of loggedtime records.
loggedtime[][author] Who performed the action.
loggedtime[][date] When was the time logged for.
loggedtime[][loggedinsubtask] Whether the time was logged in subtask.
loggedtime[][loggedtime] The number of logged hours

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/get_tasks_with_log_time/
Request body: {"fromdate": "2018-06-14", "todate": "2018-08-29"}

Get Links

The call to this method will return an array containing the links data. Tasks which do not have any links will be omitted.

Required
boardid or taskid boardid : An integer or an array of integers. Data for the links of all tasks will be returned;
taskid: An integer or an array of integers for which the links data will be returned.
Optional
boardit A single integer or an array of integers denoting board IDs. Data for the links of all tasks in the boards will returned.
taskid A single integer or an array of integers denoting the task IDs for which the links data will be returned.
Output
taskid The id of the task to which the links data belongs.
parent The task ID of the task assigned as a parent.
children An array of task IDs, which are children of the task.
mirrors An array of task IDs, which are mirrors of the task.
relatives An array of task IDs, which are relatives of the task.
predecessors An array of task IDs, which are predecessors of the task.
successors An array of task IDs, which are successors of the task.

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/get_links/
Request body: {"taskid":[17,27], "boardid":"4"}

Edit Link

Required
taskid The ID of the task that will be linked.
action Options: “set” or “unset”
type Options: ‘child’, ‘parent’, ‘relative’, ‘mirror’, ‘predecessor’, ‘successor’. For all link types the logic is as follows: Make {taskid} a {type} of {linkedid}
linkedid The ID of the task that will be linked to {taskid}.
Optional
n/a
Output
status The status of the operation (1 or error).

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/edit_link/
Request body: {"taskid":"17", "action":"set", "linkedid":"27", "type":"relative"}

Add Attachment

This function is different from the others. The request should be encoded as multipart/form-data. One part should be named params and should contain a JSON with the boardid and taskid of the task you wish to add an attachment to. The other parts (between 1 and 5) should contain the file(s) to be attached in binary format.

Required
* Part for parameters (name=”params”) JSON formatted text with cardid and boardid (i.e. {“taskid”:”12345″,”boardid”:”1″})
* Parts for the File Contents Using the boundary string to separate the sections and place the file content raw data.
Output
attachments Array with the info about the new file(s) attached to the card.
attachments[][url] A link to the file if it was added from a storage service (Dropbox, Google Drive, etc.).
attachments[][clientName] The name of the file as uploaded by the user.
attachments[][uniqueName] Unique name of the file.
attachments[][fileSize] The size of the file.
attachments[][fileType] The extension of the file.
attachments[][status] Upload status.

* See below in the example how the multipart/form-data body should look like.

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/add_attachment/


Request headers:
content-type: multipart/form-data; boundary=AnyStringNotFoundInTheBody apikey:

Request body:

--AnyStringNotFoundInTheBody
Content-Disposition: form-data; name="params"


{"taskid":"12345","boardid":"1"}


--AnyStringNotFoundInTheBody
Content-Disposition: form-data; name="Screenshot.png"; filename="Screenshot.png"
Content-Type: image/png

[binary image data]

--AnyStringNotFoundInTheBody--

Get Attachment

Use this call to download attachments.

Required
taskid The ID of the card holding the attachment.
uniquename The uniqueName parameter of the attachment. Can be obtained through get_task_details or get_all_tasks.
Optional
thumbnail Set to “yes” if you want to get a thumbnail of the original attachment. Valid only for image files.
encoding Specifies the encoding in which to return the file. Supported formats are ‘binary’ and ‘base64’. Default is ‘binary’. Note that if any error occurs the response format is determined by the ‘format’ URL parameter.
Output
Attachment data or error.

Example request Do not forget to send a valid header containing your API key

https://.kanbanize.com/index.php/api/kanbanize/get_attachment/
Request body: {taskid:27, uniquename:"uniqueNameOfTheFile.txt"}

Archive Task

Required
cardit Id or ids of cards that will be archived. The cards must be not be blocked, in column Done or in column Archive.
Optional
version Version of the archive. When selected it can’t be empty, also can’t be array of values.
Output
status Status 1 (True) if successful operation or Error when False.

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/archive_task
Request body: {"cardid":[17,321], "version":"name-of-the-versions"}

Edit Custom Fields

Required
cardit The id of the card for which you want to apply custom field. The custom field should already have been created.
fields An array of the custom fields.
fields[][name] The name of the custom field. Must match valid custom field per board.
fields[][value] The value of the custom field. Value type should be the same as from the custom field declaration.
Optional
n/a .
Output
status Status 1 (True) if successful operation or Error when False!

Example request Do not forget to send a valid header containing your API key

https://<subdomain>.kanbanize.com/index.php/api/kanbanize/edit_custom_fields
Request body: {"cardid":"17", "fields":[{"name":"price", "value":"233"}, {"name":"mail", "value":"ex@test.com"}]}

The following limits for using the API are implemented:

Function Limit per hour (per API KEY) Function Limit per hour (per API KEY)
login 30 get_all_tasks 60
get_projects_and_boards 30 add_comment 30
get_board_structure 30 move_task 60
get_board_settings 30 edit_task 30
create_new_task 30 get_board_activities 30
delete_task 60 block_task 30
get_task_details 60

Authentication

Every Kanbanize user has a personal API key that is used to authenticate the user when accessing the API. Each API request (except those for the “login” function) must contain a valid http header called “apikey”. The header’s value should be a valid API key. You can obtain it from the output of the “login” function or via the web version (click on your username in the upper right corner and select API).

If you have Two Factor Authentication (2FA) enabled for your account you have to supply an additional http header called “otp”. This header should contain a valid One-time Password (OTP) for the time the request is made. The algorithm for generating One-time Password is based on the implementation of Google Authenticator. The personal 2FA secret key used in the algorithm is shown only once when 2FA is set up. You should store it in a secure place it to generate OTPs when needed. For more information on how to use 2FA with Kanbanize check this post in our blog.

Input parameters

Depending on the function you are accessing, you need to specify certain parameters so that the request could be processed properly. The way parameters are set is by embedding them either into the request URI or into the request body. The request body is the recommended approach.

Examples:

Sending a parameter "boardid" with value 22 as part of the request URl:

https://<subdomain>/index.php/api/kanbanize/<function>/boardid/22

Sending a parameter “boardid” with value 22 and parameter “taskid” with value 14 as part of the request URI:

https://<subdomain>/index.php/api/kanbanize/<function>/boardid/22/taskid/14

Sending a parameter “boardid” with value 22 and parameter “taskid” with value 14 as part of the request BODY. The BODY needs to be a valid JSON string. If a value is set in both the BODY and the URI, the BODY value is taken. If you use the backslash (\) or a double quote (“) you need to escape them with the backslash character: (\\) or (\”).

The request URI: https://<subdomain>/index.php/api/kanbanize/<function>
The request body: {"boardid":22,"taskid":14}

You can also specify the format of the result. Available formats are:

XML (default if formatting parameter is not provided)

https://<subdomain>/index.php/api/kanbanize/<function>//format/xml

JSON (for more information check this website http://www.json.org/)

https://<subdomain>/index.php/api/kanbanize/<function>//format/json

Beeindruckend, nicht wahr?
Testen Sie es jetzt kostenlos!

Das Testkonto in Kanbanize bietet nahezu ohne Einschränkungen Zugriff auf alle Funktionen im System. Während des 30-tägigen Testzeitraums können Sie auch Ihr Team einladen, die App in einer produktiven Umgebung zu testen.