Using the v0 version it is possible to access some KanbanBOX resources (cards, loops, parts, etc.).
There are other resources that you can access using the v1 version. For more information, visit KanbanBOX REST API v1.
V0 RESOURCES
Available resources are:
- Loops: collection of kanban loops.
- Cards: collection of current kanban cards (as visible on the kanban board).
- Moves: collection of kanban cards status changes.
- Parts: collection of parts.
- Part images: collection of part images.
- Worklists: collection of worklists.
- Worklist_cards: collection of kanban cards in a worklists.
- Orders: collection of synchro orders.
- Advance: collection for advance kanban.
- Documents: collection of document.
- Documents rows: collection of kanban cards in a document.
- Prints: PDF print of a kanban cards and worklists.
- Calendar: collection of calendar.
- Stats: collection of kanban statuses.
- Sync_parts: collection of part synchronization.
- Custom scripts: collection of custom developed scripts.
- Special functions: collection of special developed functions.
Loops
Available methods: GET, POST, PUT, DELETE.
GET Loops
Get kanban loops data.
URL: https://api.kanbanbox.com/rest/v0/loops
PARAMETERS
Parameter | Type | Description |
---|---|---|
fields | Optional | Comma delimited list (no spaces!) with the name of the fields you want to be returned. If “fields” parameter is not specified, this is the default fields list:
|
filter[] | Optional | Filtering criteria for the result set. You can define multiple filtering criteria (that will be connected by a logical AND) repeating the filter[] parameter for each of them. See the “Filtering” paragraph for more information on the filter syntax. |
sort | Optional | Sorting criteria for the result set. All the fields in the sorting criteria have to be in the selected fields list as well. See the “Sorting” paragraph for more information on the sort syntax. |
limit | Optional | Number of records to return. Default value: 10 |
offset | Optional | Number of the first returned record. Together with limit, offset is useful for pagination. Default value: 0 |
date_format | Optional | String that defines the format of input and output date values. Most common strings are a combination of:
Default value: Y-m-d The full list of symbols is available here: |
timezone | Optional |
Timezone for input and output date values. The full list of supported timezones here: https://www.php.net/manual/en/timezones.php Timezone requires date_format |
GET Loops/{loop_id}
Get one specific kanban loop data.
URL: https://api.kanbanbox.com/rest/v0/loops/{loop_id}
where {loop_id} is the ID number that identifies the KanbanBOX loop.
PARAMETERS
Parameter | Type | Description |
---|---|---|
fields | Optional | Same rules apply as in the GET Loops request. |
POST Loops
Create a new kanban loop.
URL: https://api.kanbanbox.com/rest/v0/loops
PARAMETERS
Parameter | Type | Description |
---|---|---|
part_number | Required | Part number of the kanban loop. It must be an existing part number in the master data. |
supplier_name | Required | Supplier in the kanban loop . It must be an existing name for a Supplier in the master data. |
customer_name | Required | Customer in the kanban loop. It must be an existing name for a Client in the master data. |
kanban_manager | Optional | Username of the user that is responsible for the management of the kanban loop. |
location_at_supplier | Optional | Location of the kanban container in the supplier's warehouse. |
location_at_customer | Optional | Location of the kanban container in the client's warehouse. |
kanban_card | Required | Type of kanban card management during the kanban life cycle. Admitted values:
|
type_of_kanban | Required | Type of kanban loop. Admitted values:
|
lead_time | Required | Lead time for kanban replenishment, in working days. |
consumption | Optional | Daily consumption for the part. |
safety_lead_time | Optional | Safety lead time, to be added to the Lead time for kanban calculation, in working days. |
minimum_batch_size | Optional | Minimum batch size for the part. |
multiple_batch_size | Optional | Multiple batch size for the part. |
bin_name | Optional | Name of the container used for the kanban loop. It must be an existing name for a Bin in the master data. |
bin_capacity | Optional | Maximum quantity of the part that can be stored in the bin. |
policy | Required | Management policy for the kanban loop. Admitted values:
|
number_of_kanban_cards | Required | Total number of kanban cards. |
kanban_set_quantity | Required | Quantity for each kanban container. |
batch_of_kanban | May be required | Required if policy = “batch”. Minimum number of kanban that must be batched before release to the supplier. Used only when kanban Policy is set to "batch". |
reorder_point | May be required | Required if policy = “signal”. Re-order point for the signal kanban. Used only when the kanban Policy is set to "signal". |
limit_quantity | Optional | Total quantity that can be consumed before the kanban loop is automatically blocked. |
limit_warning | Optional | When the remaining quantity that can be consumed goes under the limit_warning value, an email alert will be sent to the kanban manager user. |
RESPONSE
Response is an array in the requested format.
In case of success, response has HTTP status code 200 and contains the following values:
Field | Value |
---|---|
loop_id | The KanbanBOX ID of the newly created kanban loop. |
cards | Array of the created newly kanban cards for this loop. Each row in the array is a “card” object that contains:
|
In case of errors, response has HTTP status code 400 and contains the following values:
Field | Value |
---|---|
error_message | Feedback message to the user that explains what went wrong. |
PUT Loops/{loop_id}
Update a kanban loop.
URL: https://api.kanbanbox.com/rest/v0/loops/{loop_id}
where {loop_id} is the KanbanBOX numeric ID of the kanban loop.
PARAMETERS
The parameters that need to be updated. Available parameters are explained in the POST Loops request, with the following few exceptions:
- In this case, none of the fields is required.
- limit_quantity: if a limit is currently present, it will be overwritten and the count of consumed quantity and remaining quantity from the last limit setting will be reset.
- The fields buffer, minimum_rhythm, maximum_rhythm can be set exclusively through a PUT call.
- force_cards_alignment: parameter to force alignment of the loop cards. Admitted values: "true" and "false".
All the fields can be updated only by the loop owner.
RESPONSE
Response is an array in the requested format.
In case of success, response has HTTP status code 200 and contains the following values:
Field | Value |
---|---|
loop_id | The KanbanBOX ID of the newly created kanban loop. |
cards | Array of the created newly kanban cards for this loop. Each row in the array is a “card” object that contains:
|
In case of errors, response has HTTP status code 400 and contains the following values:
Field | Value |
---|---|
error_message | Message to the user that explains what went wrong. |
DELETE Loops/{loop_id}
Delete a kanban loop.
URL: https://api.kanbanbox.com/rest/v0/loops/{loop_id}
where {loop_id} is the KanbanBOX numeric ID of the kanban loop.
PARAMETERS
Parameter | Type | Description |
---|---|---|
delete_cards_now | Optional | If value of parameter is the string “DELETE”, kanban cards will be deleted immediately together with the kanban loop, otherwise they will exist until physical consumption of the container. |
The parameters that need to be updated. Available parameters are explained in the POST Loops request. In this case, no field is required.
RESPONSE
Response is an array in the requested format.
In case of success, response has HTTP status code 200 and contains the following values:
Field | Value |
---|---|
deleted_loop_id | The KanbanBOX ID of kanban loop that has been deleted. |
cards | Array of the current kanban cards for this loop. Each row in the array is a “card” object that contains:
|
message | Feedback message to the user. |
In case of errors, response has HTTP status code 400 and contains the following values:
Field | Value |
---|---|
error_message | Feedback message to the user that explains what went wrong. |
Cards
Available methods: GET, PUT, POST
GET Cards
Get kanban cards data.
URL: https://api.kanbanbox.com/rest/v0/cards
PARAMETERS
Parameter | Type | Description |
---|---|---|
fields | Optional | Comma delimited list (no spaces!) with the name of the fields you want to be returned. If “fields” parameter is not specified, this is the default fields list:
Other available fields:
Contact KanbanBOX customer service if you need any additional field. |
status | Optional | If specified, only cards in the specified status will be returned. Admitted values:
This value will overwrite any equality value specified for “kanban_status_name” within the filter parameter. |
part_number | Optional | If specified, only cards with the specified part number will be returned. This value will overwrite any equality value specified for “part_number” within the filter parameter. |
filter[] | Optional | Filtering criteria for the result set. You can define multiple filtering criteria (that will be connected by a logical AND) repeating the filter[] parameter for each of them. See the “Filtering” paragraph for more information on the filter syntax. |
sort | Optional | Sorting criteria for the result set. All of the fields in the sorting criteria have to be in the selected fields list as well. See the “Sorting” paragraph for more information on the sort syntax. |
limit | Optional | Number of records to return. Default value: 10 |
offset | Optional | Number of the first returned record. Together with limit, offset is useful for pagination. Default value: 0 |
date_format | Optional | String that defines the format of input and output date values. Most common strings are a combination of:
Default value: Y-m-d The full list of symbols is available here: |
timezone | Optional | Timezone for input and output date values. The full list of supported timezones here: https://www.php.net/manual/en/timezones.php Timezone requires date_format |
GET Cards/{ekanban_string_id}
Get one specific kanban card data.
URL: https://api.kanbanbox.com/rest/v0/cards/{ekanban_string_id}
where {ekanban_string_id} is the 8 characters string that identifies the KanbanBOX kanban card or the worklist
PARAMETERS
Parameter | Type | Description |
---|---|---|
fields | Optional | Same rules apply as in the GET Cards request. |
PUT Cards/{ekanban_string_id}
Change status or information to one specific kanban card.
URL: https://api.kanbanbox.com/rest/v0/cards/{ekanban_string_id}
where {ekanban_string_id} is the 8 characters string that identifies the kanban card.
Use {worklist_string_id} instead of {ekanban_string_id} to change all cards that can be modified in the worklist.
PARAMETERS
Parameter | Type | Description |
---|---|---|
new_status | Optional | Name of the new status for the kanban card. Admitted values:
All the values are admitted for the loop owner. In addition, process, done, transit are admitted for an external supplier; empty, released, full are admitted for an external customer. Additionally, the following values can be used to trigger special actions:
|
kanban_quantity | Optional |
The real quantity of the kanban card. The external supplier can edit the quantity when the card is In process, Done or In transit. The external customer can edit the quantity when the card is Released or Full. |
card_reference | Optional | Can be edited only by the loop owner and the external customer. |
card_note | Optional | Can be edited by the loop owner and the external partners. |
picking_location | Optional | Can be edited by the loop owner and the external supplier. |
order_number_for_customer | Optional | Can be edited only by the external customer, if present, or by the loop owner when the customer is internal or not linked. |
customer_lot_number | Optional | Can be edited only by the external customer, if present, and by the loop owner. |
order_number_for_supplier | Optional | Can be edited only by the external supplier, if present, or by the loop owner when the supplier is internal or not linked. |
supplier_lot_number | Optional | Can be edited only by the external supplier, if present, and by the loop owner. |
blocked | Optional |
Admitted values: 0 or 1. Can be edited by the loop owner and the external partners. |
block_reason | Optional | Can be edited by the loop owner and the external partners. |
priority | Optional |
Admitted values: 0 or 1. Can be edited by the loop owner and the external partners. |
out_of_stock | Optional |
Admitted values: 0 or 1. Can be edited by the loop owner and the external partners. |
card_1_text | Optional | Can be edited only by the loop owner. |
expiration_date | Optional | Can be edited only by the loop owner. |
custom_card_id | Optional | |
api_flag | Optional | Can be edited only by the loop owner. |
fields | Optional | Comma delimited list (no spaces!) with the name of additional fields you want to be returned. If “fields” is specified, then “part_number”, “kanban_quantity” and “kanban_status_name” will always be included. Important: the fields parameter is ignored when the new_status parameter is not present. |
date_format | Optional | String that defines the format of input and output date values. Most common strings are a combination of:
Default value: Y-m-d The full list of symbols is available here: http://php.net/manual/en/function.date.php |
timezone | Optional |
Timezone for input and output date values. The full list of supported timezones here: https://www.php.net/manual/en/timezones.php Timezone requires the parameter date_format |
RESPONSE
Response is an array in the requested format.
In case of success, response contains the following values:
Field | Value |
---|---|
id_license | ID of the KanbanBOX license. |
id_user | ID of the API user. |
original_string_id | Card 8 characters identifier before the transaction. |
string_id | Card 8 characters identifier after the transaction. In case of set empty or released, the identifier changes if kanban card type is “throw-away”). In case of set empty or released, the identifier may be empty if the kanban card is not needed anymore. |
new_status | New kanban card status (it may be different from the requested status if any kanban rule applies). new_status is present in the output only when the parameter new_status is present as an input. |
message | Message for the user. |
data_of_changed_cards | Array containing the additional fields for each changed card, if specified with “fields” parameter in the request. data_of_changed_cards is present in the output only when the parameter new_status is present as an input. |
In case of error, response contains the following values:
Field | Value |
---|---|
id_license | ID of the KanbanBOX license. |
id_user | ID of the API user. |
original_string_id | Card 8 characters identifier before the transaction. |
error_number | KanbanBOX error number. |
message | Message for the user. |
Depending on the error type, the response will have different error_number values and HTTP status codes, as follow:
Error number | HTTP status code | Reason of error |
---|---|---|
10 | 400 | Missing parameter. |
11 | 400 | Invalid parameter value. |
12 | 404 | Obsolete resource. |
13 | 404 | Resource not found. |
14 | 403 | Action not possible. |
15 | 403 | Blocked resource. |
16 | 408 | Occupied resource. |
17 | 403 | Permission denied. |
500 | Internal error. |
POST Cards
Add extra kanban cards or excess kanban cards to existing loops.
URL: https://api.kanbanbox.com/rest/v0/cards
PARAMETERS
Parameter | Type | Description |
---|---|---|
loop_id | May be required | Either loop_id or ekanban_string must be specified. |
ekanban_string | May be required | Either loop_id or ekanban_string must be specified. |
card_type | Required | Admitted values:
|
kanban_quantity | Optional | Default value: kanban loop setting |
number_of_cards | Optional |
Number of kanban cards to create. Default value: 1 |
required_date | Optional | Default value: calculated based on kanban loop lead time. Default format: Y-m-d |
bin_number | Optional | |
kanban_status_name | Optional | Admitted values when card_type = “extra”:
Admitted values when card_type = “excess”:
Default value: released |
card_reference | Optional | |
expiration_date | Optional | |
date_format | Optional | String that defines the format of input and output date values. Most common strings are a combination of:
Default value: Y-m-d The full list of symbols is available here: |
timezone | Optional | Timezone for input and output date values. The full list of supported timezones here: https://www.php.net/manual/en/timezones.php Timezone requires date_format |
RESPONSE
Response is an array in the requested format.
In case of success, response contains the following values:
Field | Value |
---|---|
string_id | The 8 characters string that identifies the KanbanBOX kanban card. |
message | Message for the user. |
Moves
Available methods: GET, PUT
GET Moves
URL: https://api.kanbanbox.com/rest/v0/moves
PARAMETERS
Parameter | Type | Description |
---|---|---|
fields | Optional | Comma delimited list (no spaces!) with the name of the fields you want to be returned. If “fields” parameter is not specified, this is the default fields list:
Other available fields:
Contact KanbanBOX customer service if you need any additional field. |
status | Optional | If specified, only cards in the specified status will be returned. Admitted values:
This value will overwrite any equality value specified for “kanban_status_name” within the filter parameter. |
part_number | Optional | If specified, only cards with the specified part number will be returned. This value will overwrite any equality value specified for “part_number” within the filter parameter. |
filter[] | Optional | Filtering criteria for the result set. You can define multiple filtering criteria (that will be connected by a logical AND) repeating the filter[] parameter for each of them. See the “Filtering” paragraph for more information on the filter syntax. |
sort | Optional | Sorting criteria for the result set. All the fields in the sorting criteria must be in the selected fields list as well. See the “Sorting” paragraph for more information on the sort syntax. |
limit | Optional | Number of records to return. Default value: 10 |
offset | Optional | Number of the first returned record. Together with limit, offset is useful for pagination. Default value: 0 |
date_format | Optional | String that defines the format of input and output date values. Most common strings are a combination of:
Default value: Y-m-d The full list of symbols is available here: |
timezone | Optional | Timezone for input and output date values. The full list of supported timezones here: https://www.php.net/manual/en/timezones.php Timezone requires date_format |
PUT Moves
URL: https://api.kanbanbox.com/rest/v0/moves/{ekanban_id}/{kanban_status_name}
where {ekanban_id} is the numeric ID of a kanban card, and {kanban_status_name} is the status name (new, empty, batching, released, process, done, transit, full).
PARAMETERS
Parameter | Type | Description |
---|---|---|
api_flag | Required |
Parts
Available methods: GET
GET Parts
URL: https://api.kanbanbox.com/rest/v0/parts
PARAMETERS
Parameter | Type | Description |
---|---|---|
fields | Optional | Comma delimited list (no spaces!) with the name of the fields you want to be returned. If “fields” parameter is not specified, this is the default fields list:
Other available fields:
Contact KanbanBOX customer service if you need any additional field. |
filter[] | Optional | Filtering criteria for the result set. You can define multiple filtering criteria (that will be connected by a logical AND) repeating the filter[] parameter for each of them. See the “Filtering” paragraph for more information on the filter syntax. |
sort | Optional | Sorting criteria for the result set. All the fields in the sorting criteria must be in the selected fields list as well. See the “Sorting” paragraph for more information on the sort syntax. |
limit | Optional | Number of records to return. Default value: 10 |
offset | Optional | Number of the first returned record. Together with limit, offset is useful for pagination. Default value: 0 |
date_format | Optional | String that defines the format of input and output date values. Most common strings are a combination of:
Default value: Y-m-d The full list of symbols is available here: |
timezone | Optional | Timezone for input and output date values. The full list of supported timezones here: https://www.php.net/manual/en/timezones.php Timezone requires date_format |
GET Parts/{part_id}
URL: https://api.kanbanbox.com/rest/v0/parts/{part_id}
where {part_id} is ID number that identifies the KanbanBOX part.
PARAMETERS
Parameter | Type | Description |
---|---|---|
fields | Optional | Same rules apply as in the GET Parts request. |
PUT Parts/{part_id}
URL: https://api.kanbanbox.com/rest/v0/parts/{part_id}
where {part_id} is the numeric automatic ID that identifies the part in KanbanBOX.
Notice: the part_id is not the part number! Please use GET Parts to know which ID is associated to your part number.
PARAMETERS
Parameter | Type | Description |
---|---|---|
part_number | Optional | |
part_description | Optional | |
unit_of_measurement | Optional | |
part_weight | Optional | Numeric |
part_cost | Optional | Numeric |
part_informations | Optional | |
part_custom_field_1 | Optional | |
part_custom_field_2 | Optional | |
part_custom_field_3 | Optional | |
part_custom_field_4 | Optional |
RESPONSE
Response is an array in the requested format.
In case of success, response contains the following values:
Field | Value |
---|---|
message | Message for the user. |
In case of error, response contains the following values:
Field | Value |
---|---|
error_message | Message for the user. |
POST Parts
URL: https://api.kanbanbox.com/rest/v0/parts
PARAMETERS
Parameter | Type | Description |
---|---|---|
part_number | Required | |
part_description | Optional | |
unit_of_measurement | Optional | |
part_weight | Optional | Numeric |
part_cost | Optional | Numeric |
part_informations | Optional | |
part_custom_field_1 | Optional | |
part_custom_field_2 | Optional | |
part_custom_field_3 | Optional | |
part_custom_field_4 | Optional |
RESPONSE
Response is an array in the requested format that contains the following values:
Field | Value |
---|---|
message_type | 'ok' or 'error' |
message | Message for the user. |
Part images
GET Part images
URL: https://api.kanbanbox.com/rest/v0/part_images
PARAMETERS
Parameter | Type | Description |
---|---|---|
part_id | Required | Numeric |
RESPONSE
In case of success, response contains the file bytes.
In case of error, response contains the following values:
Field | Value |
---|---|
message_type | error |
message | Message for the user. |
POST Part images
URL: https://api.kanbanbox.com/rest/v0/part_images
PARAMETERS
Parameter | Type | Description |
---|---|---|
part_id | Required | Numeric |
part_image | Required | File |
Notice: the part_id is not the part number! Please use GET Parts to know which ID is associated to your part number.
RESPONSE
Response is an array in the requested format that contains the following values:
Field | Value |
---|---|
message_type |
ok or error
|
message | Message for the user. |
DELETE Part images
URL: https://api.kanbanbox.com/rest/v0/part_images/{part_id}
where {part_id} is the numeric automatic ID that identifies the part in KanbanBOX.
Notice: the part_id is not the part number! Please use GET Parts to know which ID is associated to your part number.
RESPONSE
Response is an array in the requested format that contains the following values:
Field | Value |
---|---|
message_type |
ok or error
|
message | Message for the user. |
Worklists
Available methods: GET, POST, PUT
GET Worklists
URL: https://api.kanbanbox.com/rest/v0/worklists/{worklist_string_id}
where {worklist_string_id} is the ID string that identifies a KanbanBOX worklist.
This resource gives you the possibility to get all cards details from a worklist.
See GET Cards/{string_id} for all available parameters.
POST Worklists
URL: https://api.kanbanbox.com/rest/v0/worklists
This resource gives you the possibility to create a worklist.
PARAMETERS
Common parameters:
Parameter | Type | Description |
---|---|---|
worklist_reference | Optional | String to use as reference. |
add_ekanban_string | Optional | A json array with ekanban strings to add to the worklist. Example: ["MTSBF46M", "P3BTS7NA"] |
filter_alias | Optional | A saved filter name to use to build the worklist. When both the parameters add_ekanban_string and filter_alias are specified, the call generates an error. |
overwrite_filter_for_status | Optional | Forces the standard filter conditions for the worklist creation, that include only released cards and in process cards marked with priority. Works only in combination with filter_alias. Admitted values: 0 (no) or 1 (yes) Default value: 0 (no) |
only_available_cards | Optional | Only for move kanban loops: Include in the worklist only the kanban cards that have availability in the supplier supermarket. Works only in combination with filter_alias. Admitted values: 0 (no) or 1 (yes) Default value: 0 (no) |
RESPONSE
Response is an array in the requested format.
In case of success, response contains the following values:
Field | Value |
---|---|
worklist_string_id | The 10 characters string that identifies the KanbanBOX worklist. |
total_added | Number of cards added to the worklist. |
message | Message for the user. |
PUT Worklists
URL: https://api.kanbanbox.com/rest/v0/worklists/{worklist_string_id}
where {worklist_string_id} is ID string that identifies the KanbanBOX worklist
This resource gives you the possibility to modify a worklist.
PARAMETERS
Common parameters:
Parameter | Type | Description |
---|---|---|
worklist_reference | Optional | String to use as reference. |
add_ekanban_string | Optional | A json array with ekanban strings to add to the worklist. Example: ["MTSBF46M", "P3BTS7NA"] |
del_ekanban_string | Optional | A json array with ekanban strings to delete from the worklist. Example: ["E4W8AR2L","DQ68JGCL"] |
RESPONSE
Response is an array in the requested format.
In case of success, response contains the following values:
Field | Value |
---|---|
worklist_string_id | The 10 characters string that identifies the KanbanBOX worklist. |
total_added | Number of cards added to the worklist. |
total_deleted | Number of cards deleted from the worklist. |
total_already_present | Number of cards not updated, because already in worklist. |
message | Message for the user. |
Worklist_cards
Available methods: PUT
PUT Worklist_cards
URL: https://api.kanbanbox.com/rest/v0/worklist_cards/{worklist_string_id}
where {worklist_string_id} is the ID string that identifies a KanbanBOX worklist.
This resource gives you the possibility to modify all kanban cards in the specified worklist.
PARAMETERS
Parameter | Type | Description |
---|---|---|
blocked | Optional | Admitted values: 0 or 1 |
block_reason | Optional | |
card_reference | Optional | |
order_number_for_supplier | Optional | |
order_number_for_customer | Optional | |
new_status | Optional |
Admitted values:
|
RESPONSE
In case of success, the response contains the following values:
Field | Value |
---|---|
message | Message for the user. |
cards | Array of the cards identifiers in the worklist. |
cards_count | Number of cards in the worklist. |
In case of error, the response contains the following values:
Field | Value |
---|---|
message | Message for the user |
error_number | The error number |
Depending on the error type, the response will have different error_number values and HTTP status codes, as follows:
Error number | HTTP status code | Reason of error |
---|---|---|
10 | 400 | Missing parameter |
11 | 400 | Invalid parameter value |
13 | 404 | Resource not found |
14 | 403 | Action not possible |
17 | 403 | Permission denied |
500 | Internal error |
Orders
Available methods: POST
POST Orders
URL: https://api.kanbanbox.com/rest/v0/orders
ORDER DATA
KanbanBOX expects the order rows either as a file attached to the request, or as “data” parameter inside the request body. The order row is in the format:
Field name | Type | Description |
---|---|---|
part_number | Required | Part number of the order |
supplier_number | Required | Supplier Number of the order Supplier |
customer_number | Required | Customer Number of the order Customer |
total_quantity | Required | Total order quantity, expressed in the unit of measurement of the part number. |
required_date | Optional | Required date for the order row. |
type | Required | Admitted values:
|
reference | Optional | Order row reference, that will be written in the card reference field. |
picking_location | Optional | Will be written in the card picking location field |
order_number_for_customer | Optional | Will be written in the card order number for customer field, reserved only for the customer |
order_number_for_supplier | Optional | Will be written in the card order number for supplier field, reserved only for the supplier |
kanban_quantity | Optional | Standard material quantity for each extra-kanban card. |
status | Optional | Status of each extra-kanban card. Permitted values are released and empty . Default is released
|
bin_number | Optional | Bin Number of the bin for this material |
note | Optional | Order row note, that will be written in the card note field. |
loop_grouping | Optional | Grouping of the kanban loop to which the extra cards will be added. This field can be useful when there are kanban loops with same part number, customer and supplier, but different grouping: if the grouping field is not included in the request body, the chosen loop will be the first active kanban loop in ascending ID order with the provided part number, supplier and customer. |
transcoding_supplier_part_number | Optional | Part number for the supplier (used if the supplier didn't set a transcoding). |
transcoding_supplier_part_description | Optional | Part description for the supplier (used if the supplier didn't set a transcoding). |
transcoding_customer_part_number | Optional | Part number for the customer (used if the customer didn't set a transcoding). |
transcoding_customer_part_description | Optional | Part description for the customer (used if the customer didn't set a transcoding). |
part_description | Optional | Part description value to update the part master data, when add_update_parts = 1. |
part_unit_of_measurement | Optional | Unit of measurement value to update the part master data, when add_update_parts = 1. |
part_weight | Optional | Weight value to update the part master data, when add_update_parts = 1. |
part_cost | Optional | Cost value to update the part master data, when add_update_parts = 1. |
part_custom_field_1 | Optional | Part custom field 1 value to update the part master data, when add_update_parts = 1. |
part_custom_field_2 | Optional | Part custom field 2 value to update the part master data, when add_update_parts = 1. |
part_custom_field_3 | Optional | Part custom field 3 value to update the part master data, when add_update_parts = 1. |
part_custom_field_4 | Optional | Part custom field 4 value to update the part master data, when add_update_parts = 1. |
part_informations | Optional | Part informations value to update the part master data, when add_update_parts = 1. |
overwrite_loop_values | Optional | Use provided data for updating the loop, if it exists. Fields not provided remain untouched. Admitted values:
0 (False) |
Fields names and values of the “type” field can be remapped to customized names by specifying the corresponding fields_map_{field_name}
parameter.
PARAMETERS
Parameter | Type | Description |
---|---|---|
data_format | Required | Admitted values:
|
xml_node_name | Optional | Default value: order_row . |
fields_map_part_number | Optional | Customized alias for part_number . |
fields_map_supplier_number | Optional | Customized alias for supplier_number . |
fields_map_customer_number | Optional | Customized alias for customer_number . |
fields_map_total_quantity | Optional | Customized alias for total_quantity . |
fields_map_required_date | Optional | Customized alias for required_date . |
fields_map_type | Optional | Customized alias for type . |
fields_map_reference | Optional | Customized alias for reference . |
fields_map_picking_location | Optional | Customized alias for picking_location . |
fields_map_order_number_for_customer | Optional | Customized alias for order_number_for_customer . |
fields_map_order_number_for_supplier | Optional | Customized alias for order_number_for_supplier . |
fields_map_kanban_quantity | Optional | Customized alias for kanban_quantity . |
fields_map_status | Optional | Customized alias for status . |
fields_map_bin_number | Optional | Customized alias for bin_number . |
field_map_note | Optional | Customized alias for note . |
field_map_transcoding_supplier_part_number | Optional | Customized alias for transcoding_supplier_part_number . |
field_map_transcoding_supplier_part_description | Optional | Customized alias for transcoding_supplier_part_description . |
field_map_transcoding_customer_part_number | Optional | Customized alias for transcoding_customer_part_number . |
field_map_transcoding_customer_part_description | Optional | Customized alias for transcoding_customer_part_description . |
field_map_part_description | Optional | Customized alias for part_description . |
field_map_part_unit_of_measurement | Optional | Customized alias for part_unit_of_measurement . |
field_map_part_weight | Optional | Customized alias for part_weight . |
field_map_part_cost | Optional | Customized alias for part_cost . |
field_map_part_custom_field_1 | Optional | Customized alias for part_custom_field_1 . |
field_map_part_custom_field_2 | Optional | Customized alias for part_custom_field_2 . |
field_map_part_custom_field_3 | Optional | Customized alias for part_custom_field_3 . |
field_map_part_custom_field_4 | Optional | Customized alias for part_custom_field_4 . |
field_map_part_informations | Optional | Customized alias for part_informations . |
fields_value_production | Optional | Customized alias for the type value production . |
fields_value_purchase | Optional | Customized alias for the type value purchase . |
fields_value_move | Optional | Customized alias for the type value move . |
fields_value_sales | Optional | Customized alias for the type value sales . |
date_format | Optional | String that defines the format of input and output date values. Most common strings are a combination of:
Default value: The full list of symbols is available here: |
timezone | Optional | Timezone for input and output date values. The full list of supported timezones here: https://www.php.net/manual/en/timezones.php Timezone requires date_format |
data | Optional | Order rows data, as an alternative to the attached file. |
add_update_parts | Optional | Use provided data for adding or updating part numbers in the part master data. When a part number is already existing in the master data, fields which are not provided remain untouched. Admitted values:
0 (False) |
use_loop_kanban_quantity | Optional | Standard material quantity for each extra-kanban card is taken from the loop, if value inserted equals to 1 and kanban_quantity parameter is not specified. Admitted values:
0 (False) |
debug | Optional | Commit import or just simulate. Admitted values:
Default value: |
RESPONSE
Response is an array in the requested format.
In case of success, response has HTTP status code 200 and contains the following values:
Field | Value |
---|---|
cards | Array of the created kanban cards. Each row in the array is a “card” object that contains:
|
message | Feedback message to the user. |
cards_count | Total number of cards created |
imported_rows_count | Total number of order rows imported |
In case of errors, response has HTTP status code 400 and contains the following values:
Field | Value |
---|---|
error_message | Feedback message to the user that explains what went wrong, and link to the log page inside KanbanBOX. |
error_data | Array of errors found. |
Advances
Available methods: POST
POST Advances
URL: https://api.kanbanbox.com/rest/v0/advances
PARAMETERS
Parameter | Type | Description |
---|---|---|
ekanban_string | Required | |
customer_number | Optional | |
new_status_upstream | Optional | Default: “released”. |
new_status_downstream | Optional | Default: “full”. |
RESPONSE
Response is an array in the requested format.
In case of success, response contains the following values:
Field | Value |
---|---|
message | Message for the user. |
upstream_original_string_id | Identifier of upstream card before the transaction. |
upstream_string_id | Identifier of upstream card after the transaction. In case of set empty or released, the identifier changes if kanban card type is “throw-away”). In case of set empty or released, the identifier may be empty if the kanban card is not needed anymore. |
upstream_new_status | New upstream card status (it may be different from the requested status if any kanban rule applies). |
downstream_original_string_id | Identifier of downstream card before the transaction. |
downstream_ string_id | Identifier of downstream card after the transaction. In case of set empty or released, the identifier changes if kanban card type is “throw-away”). In case of set empty or released, the identifier may be empty if the kanban card is not needed anymore. |
downstream_new_status | New downstream card status (it may be different from the requested status if any kanban rule applies). |
In case of error, response contains the following values:
Field | Value |
---|---|
message | Message for the user. |
error_number | KanbanBOX error number. |
upstream_original_string_id | Identifier of upstream card before the transaction. |
Documents
Available methods: POST
POST Documents
Create a new document.
URL: https://api.kanbanbox.com/rest/v0/documents
PARAMETERS
Parameter | Type | Description |
---|---|---|
type | Required |
Type of the document. Admitted values:
|
document_type | Required | Document Type. |
date | Required | Document Date. |
document_number | Required | Document Number. |
document_tracking_number | Optional | Shipping tracking Number. |
date_format | Optional | String that defines the format of input and output date values. Most common strings are a combination of:
Default value: Y-m-d. The full list of symbols is available here: |
cards | Optional |
A json array with ekanban strings to add to the document. Example: ["YNKS47RT";"PX29DRM9";"5SZM6TD4"] |
status | Optional |
Admitted values:
Default value: open. |
timezone | Optional |
Timezone for input and output date values. The full list of supported timezones here: https://www.php.net/manual/en/timezones.php Timezone requires date_format. |
RESPONSE
In case of success, the response contains the following values:
Field | Value |
---|---|
message_type | "ok" |
document_id | Number that defines the KanbanBOX document. |
worklist_string_id | The 10 characters string that identifies the KanbanBOX worklist related to the document. |
In case of error, the response contains the following values:
Field | Value |
---|---|
message_type | "error". |
message | Message for the user. |
Document rows
Available methods: POST, PUT
POST Document Rows
This resource gives you the possibility to add a new row in an existing document.
URL: https://api.kanbanbox.com/rest/v0/document_rows
PARAMETERS
Parameter | Type | Description |
---|---|---|
string_id | Required | The ekanban string or the worklist string to add to the document. |
document_id | Required | The ID of the document to which the kanban card or the worklist will be added. |
RESPONSE
In case of success, the response contains the following values:
Field | Value |
---|---|
message_type | "ok" |
message | Message for the user. |
added_cards | List of cards added to the document. added_cards is present in the output only when the parameter string_id is a worklist ID. |
non_added_cards | List of cards not added to the document. not_added_cards is present in the output only when the parameter string_id is a worklist ID |
In case of error, the response contains the following values:
Field | Value |
---|---|
message_type | "error". |
message | Message for the user. |
PUT Document Rows
This resource gives you the possibility to receive or reject a document row, or remove a row from a document.
URL: https://api.kanbanbox.com/rest/v0/document_rows
PARAMETERS
Parameter | Type | Description |
---|---|---|
string_id | Required | The ekanban string. |
action | Required | The action to perform on the document row. Admitted values:
|
RESPONSE
In case of success, the response contains the following values:
Field | Value |
---|---|
message_type | "ok" |
message | Message for the user. |
In case of error, the response contains the following values:
Field | Value |
---|---|
message_type | "error". |
message | Message for the user. |
Prints
Available methods: GET
GET Prints
Get a PDF file containing one or more kanban cards, or one complete worklist.
URL: https://api.kanbanbox.com/rest/v0/prints
PARAMETERS
Parameter | Type | Description |
---|---|---|
string_id | Required | This field can contain either:
|
RESPONSE
In case of success, response is one single PDF file, containing the requested kanban cards.
In case of error, response contains the following values:
Field | Value |
---|---|
error_number | KanbanBOX error number. |
message | Message for the user. |
Calendar
Available methods: GET
GET Calendar
URL: https://api.kanbanbox.com/rest/v0/calendar
PARAMETERS
Parameter | Type | Description |
---|---|---|
fields | Optional |
|
date_format | Optional | String that defines the format of input and output date values. Most common strings are a combination of:
Default value: Y-m-d The full list of symbols is available here: |
RESPONSE
Response contains an array with the requested format values. In case of success, response has HTTP status code 200 and contains the following values:
Field | Value |
---|---|
Date | Default format: Y-m-d |
Workday |
|
Stats
GET Status_history
Method: GET
URL: https://api.kanbanbox.com/rest/v0/stats/loops/status_history
NOTE
Each entry in the Status History has an initial_status_date
and an end_status_date
.
Entries with empty end_status_date
represent the current status.
As soon as the status changes, the entry is updated and the end_status_date
is added.
PARAMETERS
Parameter | Type | Description |
---|---|---|
fields | Optional | Comma delimited list (no spaces!) with the name of the fields you want to be returned. Available fields are listed in the FIELDS paragraph. Contact KanbanBOX customer service if you need any additional field. |
filter[] | Optional | Filtering criteria for the result set. You can define multiple filtering criteria (that will be connected by a logical AND) repeating the filter[] parameter for each of them. See the “Filtering” paragraph for more information on the filter syntax. |
sort | Optional | Sorting criteria for the result set. All the fields in the sorting criteria must be in the selected fields list as well. See the “Sorting” paragraph for more information on the sort syntax. |
limit | Optional | Number of records to return. Default value: 10 |
offset | Optional | Number of the first returned record. Together with limit, offset is useful for pagination. Default value: 0 |
FIELDS
This is the list of available fields, that can be added to the fields
parameter:
- kbsh_id_kanban_master (loop ID)
- part_number
- supplier_number
- supplier_name
- customer_number
- customer_name
- number_of_kanban_cards_history
- batch_of_kanban_history
- kanban_set_quantity_history
- initial_status_date
- end_status_date
- number_of_empty_cards
- number_of_released_cards
- number_of_process_cards
- number_of_done_cards
- number_of_transit_cards
- number_of_full_cards
- number_of_batching_cards
- number_of_new_cards
- number_of_excess_cards
- number_of_cards_on_replenishment
- total_empty_quantity
- total_released_quantity
- total_process_quantity
- total_done_quantity
- total_transit_quantity
- total_full_quantity
- total_batching_quantity
- total_new_quantity
- number_of_empty_extrakb_cards
- number_of_released_extrakb_cards
- number_of_process_extrakb_cards
- number_of_done_extrakb_cards
- number_of_transit_extrakb_cards
- number_of_full_extrakb_cards
- number_of_new_extrakb_cards
- total_empty_extrakb_quantity
- total_released_extrakb_quantity
- total_process_extrakb_quantity
- total_done_extrakb_quantity
- total_transit_extrakb_quantity
- total_full_extrakb_quantity
- total_new_extrakb_quantity
- min_stock
- max_stock
- estimated_stock
- estimated_stock_value
- excess_stock
- excess_stock_value
- min_extrakb_stock
- max_extrakb_stock
- estimated_extrakb_stock
- estimated_extrakb_stock_value
- total_min_stock
- total_max_stock
- total_estimated_stock
- total_estimated_stock_value
- type_of_kanban
Sync_parts
Available methods: POST
POST Sync_parts
URL: https://api.kanbanbox.com/rest/v0/sync_parts
This resource gives you the possibility to send a csv, xml or json dataset to synchronize the part master.
The dataset can be provided:
- directly inside the HTTP request body
- as a file attached to the request
- as a file available in an ftp location, to be retrieved by KanbanBOX
PARAMETERS
Common parameters:
Parameter | Type | Description |
---|---|---|
data_format | Optional | Specifies the format of the incoming data; possible values are csv , json or xml ; Default value: |
debug | Optional | If value is “1” the process will be simulated only, no data will be changed, updated or deleted; possible values are 0 or 1 ;Default value: |
delete | Optional | If value is delete , KanbanBOX will try to delete every part not included in the given file. Default value: |
mark_missing_records | Optional | Write a value in the current KanbanBOX record field, when the record is missing from the sync source. Input must be a json object, with as a property the name of the field in which you want to save the value. Example: |
xml_node_name | Optional | The xml node name containing parts data to process; Default value: |
csv_separator | Optional | Specifies the separator character in csv file; Default value: |
csv_fields | Optional | A json array with the sequence of column field names. If the CSV file is without headers, KanbanBOX interprets data according to this columns order. Example: |
decimal_separator | Optional | Specifies the symbol used as decimal separator for numeric fields. Admitted values:
Default value: |
custom_callback_function | Optional | A custom KanbanBOX function that will be automatically executed at the end of the sync process. |
custom_callback_function_params | Optional | Parameters for the custom_callback_function, as a json array. Example: |
Additional parameters needed to send the part master data directly inside the body of the HTTP request:
Parameter | Type | Description |
---|---|---|
data | Optional | The part master data in the format specified by data_format . |
Additional parameters needed to upload import file directly inside the HTTP request as an attachment:
Parameter | Type | Description |
---|---|---|
sync_parts | Optional | The import file containing the part master data in the format specified by data_format . |
Additional parameters needed to make KanbanBOX import the file from an FTP server:
Parameter | Type | Description |
---|---|---|
ftp_server | Optional | The FTP server address where KanbanBOX will find the import file. |
ftp_user | Optional | The FTP user for logging into the FTP server. |
ftp_password | Optional | The FTP password for logging into the FTP server. |
ftp_file | Optional | The remote file path in the FTP server. |
protocol | Optional | FTP or FTPS protocol. Admitted values:
Default value: |
HOW TO CREATE A CSV OR XML IMPORT FILE
In case of CSV file, the first row must contain the fields name, and every other row the information of a specific part number. Please note that encoding format should be UTF-8, otherwise text with special characters might be dropped.
An example of a csv file content:
part_number,part_description,part_unit_of_measurement
1019020400,Sheet Protectors 32,Pcs
1019335820,Sheet Protectors 34,Pcs
An example of a xml file content (where “item” is the xml node containing part data):
<?xml version="1.0" encoding="utf-8"?>
<xml>
<data>
<item>
<part_number>1019020400</part_number>
<part_description>Sheet Protectors 32</part_description>
<part_unit_of_measurement>Pcs</part_unit_of_measurement>
</item>
<item>
<part_number>1019335820</part_number>
<part_description>Sheet Protectors 34</part_description>
<part_unit_of_measurement>Pcs</part_unit_of_measurement>
</item>
</data>
</xml>
This is the list of admitted fields (if a field is not included in this list it will be ignored):
- part_number
- part_description
- part_unit_of_measurement
- part_weight
- part_cost
- part_informations
- part_custom_field_1
- part_custom_field_2
- part_custom_field_3
- part_custom_field_4
RESPONSE
Response is an array in the requested format.
In case of success, response has HTTP status code 200 and contains the following values:
Field | Value |
---|---|
message | Feedback message for the user. |
In case of error, response has HTTP status code different from 200 and contains the following values:
Field | Value |
---|---|
error_message | Error message for the developer. |
ACTIVITY LOG
Detailed log of synchronization activity is available in the web interface of KanbanBOX:
https://app.kanbanbox.com/log_sync/view_log_sync
Custom Scripts
Available methods: POST
POST Custom_scripts/{function}
URL: https://api.kanbanbox.com/rest/v0/custom_scripts/{function}
PARAMETERS
Parameter | Type | Description |
---|---|---|
function | Optional | The name of the custom script function to call. It is necessary only if not specified in the URL. |
params_array | Optional | Array of parameters for the specific function call. Use params_array[]=value for each parameter. The parameters will be applied to the function in the same order. |
Special functions
POST Goods_receipts/worklist_and_excess_cards
URL: https://api.kanbanbox.com/rest/v0/goods_receipts/worklist_and_excess_cards
PARAMETERS
Parameter | Type | Description |
---|---|---|
worklist_string | Required | Identifier of the worklist that is grouping the cards to be received |
part_number | Required | Part number to be received |
quantity | Required | Quantity to be received |
update_values_of_received_cards | Optional | Object containing additional properties of received cards to be updated. Currently, the only allowed field is card_1_text
|
Example of request body, in json format:
{
"worklist_string":"WLXGTU8P2G",
"part_number": "ABC",
"quantity": 15,
"update_values_of_received_cards": {
"card_1_text": "New value of card_1_text"
}
}
USE CASES
Setting full a kanban card
This is how to set full a kanban card, knowing its 8 characters string id, and get the response in xml format.
In this example, string id is AB2DE8GH, and we are working inside license id=1 with user id=2.
Method | PUT |
URL | https://api.kanbanbox.com/rest/v0/cards/AB2DE8GH.xml |
Header parameters | X-API-KEY={api_key_40_characters} |
Request parameters | new_status=full |
In case of success, the response will be:
<?xml version="1.0" encoding="utf-8"?>
<xml>
<id_license>1</id_license>
<id_user>2</id_user>
<original_string_id>AB2DE8GH</original_string_id>
<string_id>AB2DE8GH</string_id>
<new_status>full</new_status>
<message>Action completed on kanban card AB2DE8GH</message>
<part_number>VIT0234</part_number>
<kanban_quantity>25</kanban_quantity>
</xml>
Setting released a kanban card
This is how to set released a kanban card, knowing its 8 characters string id, and get the response in xml format.
In this example, card with string id is AB2DE8GH will be released and the string id will change in LMN3PQ4T. We are working inside license id=1 with user id=2.
Method | PUT |
URL | https://api.kanbanbox.com/rest/v0/cards/AB2DE8GH.xml |
Header parameters | X-API-KEY={api_key_40_characters} |
Request parameters | new_status=released |
In case of success, the response will be:
<?xml version="1.0" encoding="utf-8"?>
<xml>
<id_license>1</id_license>
<id_user>2</id_user>
<original_string_id>AB2DE8GH</original_string_id>
<string_id>LMN3PQ4T</string_id>
<new_status>released</new_status>
<message>Action completed on kanban card AB2DE8GH, now LMN3PQ4T</message>
<part_number>VIT0234</part_number>
<kanban_quantity>25</kanban_quantity>
</xml>
Retrieving part numbers and quantities of all the released kanban cards
This is how to get the list of released kanban cards, with corresponding part numbers and part quantities.
Method | GET |
URL | https://api.kanbanbox.com/rest/v0/cards.json?fields=ekanban_string,part_number,kanban_quantity&limit=1000&status=released |
Header parameters | X-API-KEY={api_key_40_characters} |
Running a custom script named, for example, alignParts
Let’s consider, for this example, that you want to run a KanbanBOX custom script named alignParts which accepts two parameters.
Method | POST |
URL | https://api.kanbanbox.com/rest/v0/custom_scripts/alignParts |
Header parameters | X-API-KEY={api_key_40_characters} |
Request parameters | params_array[] = {first_parameter_value} params_array[] = {second_parameter_value} |
Example using cURL:
curl
-H "X-API-KEY: FBg5eR35AwqgRT53F2VgfKqUUKuWoZDfJot7AwK"
-X POST
-d "params_array[]={first_parameter_value}¶ms_array[]={second_parameter_value}"
https://api.kanbanbox.com/rest/v0/custom_scripts/{script_name}
Comments
0 comments
Please sign in to leave a comment.