Warehouse

Warehouse schema

id long? Warehouse ID - cannot be null in PUT/PATCH methods 📶 EQUALS,ENUM 🔽 NONE

_cloudId integer Cloud ID 🔽 NONE

barcode string?(180) Bar code 📶 EQUALS,ENUM 🔽 NONE

deleted boolean Category deleted - cannot be true in POST/PUT/PATCH methods 📶 EQUALS, ENUM 🔽 BOTH

enabled boolean Warehouse enabled 📶 EQUALS, ENUM

hexColor string?(7) Warehouse color 🔽 NONE

name string(180) Warehouse name 📶 EQUALS,STRING 🔽 BOTH

versionDate timestamp? Last modification date and time 📶 EQUALS,ENUM,NUMBER 🔽 BOTH

Warehouse response

{
    "_cloudId": <integer>,
    "barcode": <string>,
    "deleted": <boolean>,
    "enabled": <boolean>,
    "hexColor": <string>,
    "id": <long>,
    "name": <string>,
    "versionDate": <timestamp>
}

Get warehouses

GET https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses

Path Parameters

Name
Type
Description

cloudId*

integer

Query Parameters

Name
Type
Description

sort

string

filter

string

page

integer

limit

integer

Headers

Name
Type
Description

If-None-Match

string

ETag to return results only if changed.

Authorization*

string

Bearer accessToken

[{
    // Werehouses schema
}]

Get warehouse

GET https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses/:warehouseId

Path Parameters

Name
Type
Description

warehouseId*

integer

cloudId*

integer

Headers

Name
Type
Description

If-None-Match

string

ETag to return results only if changed.

Authorization*

string

Bearer accessToken

{
    //Warehouse scheme
}

Create new warehouse

POST https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses

Create a list of new warehouses.

Path Parameters

Name
Type
Description

cloudId*

integer

ID of the cloud.

Headers

Name
Type
Description

Authorization*

string

Bearer accessToken

Replace a single warehouse

PUT https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses/:warehouseId

Replace a single warehouse identified by its ID.

Path Parameters

Name
Type
Description

cloudId*

integer

ID of the cloud.

warehouseId*

integer

ID of the warehouse to replace.

Headers

Name
Type
Description

Authorization*

string

Bearer accessToken

If-Match

string

ETag to update only if not changed.

Replace many warehouses

PUT https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses

Replace a list of warehouses.

Path Parameters

Name
Type
Description

cloudId*

integer

ID of the cloud.

Headers

Name
Type
Description

Authorization*

string

Bearer accessToken

If-Match

string

ETag to update only if not changed.

Update a single warehouse

PATCH https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses/:warehouseId

Update a single warehouse identified by its ID.

Path Parameters

Name
Type
Description

cloudId*

integer

ID of the cloud.

warehouseId*

integer

ID of the warehouse to patch.

Headers

Name
Type
Description

Authorization*

string

Bearer accessToken

If-Match*

string

ETag to update only if not changed.

Delete a single warehouse

DELETE https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses/:warehouseId

Delete a single warehouse identified by its ID.

Path Parameters

Name
Type
Description

cloudId*

integer

ID of the cloud.

warehouseId*

integer

ID of the warehouse to delete.

Headers

Name
Type
Description

Authorization*

string

Bearer accessToken

If-Match

string

ETag ignored (temporarily) when deleting an entity.

Product with stock status schema

Response product with stock status is an extension for the Product response entity. That means all fields from the Product can also be found in the Product with stock status.

_warehouseId long Warehouse ID 📶 EQUALS,ENUM

purchasePriceWithoutVat double? Purchase price without VAT (if the product has been stocked up previously; null otherwise) 🔽 NONE

stockQuantityStatus double Quantity on warehouse 📶 NUMBER

stockStatusVersiondate timestamp? Last modification on warehouse 📶 EQUALS,ENUM,NUMBER 🔽 BOTH

Product with stock status response

{
    // all filelds from the Product plus the following:
    "_warehouseId": <long>,
    "purchasePriceWithoutVat": <double>,
    "stockQuantityStatus": <double>,
    "stockStatusVersiondate": <timestamp>
}

List of products with stock status

GET https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses/:warehouseId/products

Path Parameters

Name
Type
Description

warehouseId*

integer

cloudId*

integer

Query Parameters

Name
Type
Description

sort

string

filter

string

page

string

limit

string

Headers

Name
Type
Description

Authorization*

string

Bearer accessToken

If-None-Match

string

ETag to return results only if changed.

[
  {
    // extended Product schema
    "_warehouseId": <long>,
    "purchasePriceWithoutVat": <double>,
    "stockQuantityStatus": <double>,
    "stockStatusVersiondate": <timestamp>
  }
  ...
]

Product with stock status

GET https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses/:warehouseId/products/:productId

Path Parameters

Name
Type
Description

productId*

string

warehouseId*

integer

cloudId*

integer

Headers

Name
Type
Description

Authorization*

string

Bearer accessToken

If-None-Match

string

ETag to return results only if changed.

{
    // extended Product schema
    "_warehouseId": <long>,
    "purchasePriceWithoutVat": <double>,
    "stockQuantityStatus": <double>,
    "stockStatusVersiondate": <timestamp>
}
...

StockUp schema

_supplierId long? Supplier ID

_closeDeliveryNoteIds array<long>? Array of Delivery Note IDs to be marked as closed when the stock-up completes successfully.

currency string? Currency to be set for the operation (default if not specified: CZK)

invoiceNumber string Invoice number - must not be empty

note string? Custom note

updatePurchasePrice boolean Update product purchase prices

items array[1,100] Array of items to stock up (see below)

Nested array of items

_productId long? [1] Product ID

externalId string? [1] External ID

purchasePrice double? Purchase price

quantity double Items quantity

sellPrice double? Product sell price

[1] One of _productId or externalId must not be null.

StockUp request

{

    "_supplierId": <long>,
    "_closeDeliveryNoteIds": <array of long>,
    "currency": "EUR",
    "invoiceNumber": <string>,
    "note": <string>,
    "updatePurchasePrice": <boolean>,
    "items":[
        {
            "_productId": <long>,
            "externalId": <string>,       
            "purchasePrice": <double>,
            "quantity": <double>, // negative for corrections
            "sellPrice": <double>
        }
    ]
}

Stockup to warehouse

POST https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses/:warehouseId/stockups

Path Parameters

Name
Type
Description

warehouseId*

string

cloudId*

integer

Headers

Name
Type
Description

Authorization*

string

Bearer accessToken

Request Body

Name
Type
Description

object

Stockup Schema

Transfer schema

_originWarehouseId long Warehouse ID

currency string? Currency to be set for the operation (default if not specified: CZK)

invoiceNumber string Invoice number - must not be empty

note string? Custom note

updatePurchasePrice boolean Update product purchase prices

items array[1,100] Array of items to transfer (see below)

Nested array of items

_productId long? [1] Product ID

externalId string? [1] External ID

purchasePrice double? Purchase price

quantity double Items quantity

[1] One of _productId or externalId must not be null.

Transfer request

{
    "_originWarehouseId": <long>,
    "currency": "EUR",
    "invoiceNumber": <string>,
    "note": <string>,
    "updatePurchasePrice": <boolean>,
    "items":[
        {
            "_productId": <long>,
            "externalId": <string>,
            "purchasePrice": <double>,
            "quantity": <double>
        }
    ]
}

Transfer to warehouse

POST https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses/:warehouseId/transfers

Path Parameters

Name
Type
Description

warehouseId*

integer

cloudId*

integer

Headers

Name
Type
Description

Authorization*

string

Bearer accessToken

Request Body

Name
Type
Description

object

Transfare Schema

Sale schema

currency string? Currency to be set for the operation (default if not specified: CZK)

items array[1,100] Array of items to sell (see below)

Nested array of items

_productId long? [1] Product ID

externalId string? [1] External ID

note string? Custom note

quantity double Items quantity

[1] One of _productId or externalId must not be null.

Sale request

{
    "currency": "EUR",
    "items": [
        {
            "_productId": <long>,
            "externalId": <string>,
            "note": <string>,
            "quantity": <double>
        }
    ]
}

Sale product on warehouse

POST https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses/:warehouseId/sales

Path Parameters

Name
Type
Description

warehouseId*

integer

cloudId*

integer

Headers

Name
Type
Description

Authorization*

string

Bearer accessToken

Request Body

Name
Type
Description

object

Warehouse Sale Schema

Stock-taking schema

note string? Custom note.

stockTakingDate timestamp The date and time of the stock-taking.

items array Array of items for the stock-taking (see below)

Nested array of items

_productId long The product ID.

quantity BigDecimal The new quantity of the product in the warehouse.

Stock-taking request

{
    "note": <string>,
    "stockTakingDate": <timestamp>,
    "items": [
        {
            "_productId": <long>,
            "quantity": <BigDecimal>
        },
        ...
    ]
}

Perform a stock-taking

POST https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses/:warehouseId/stock-takings

Perform the stock-taking action for the specified warehouse and products. The stockTakingDate must be after the last stock-taking date (see the next endpoint) and it cannot be in the future.

This endpoint is asynchronous - the status of the operation can be monitored by a GET request on the statusWebhookUrl from the response.

Path Parameters

Name
Type
Description

cloudId*

integer

warehouseId*

integer

Headers

Name
Type
Description

Authorization*

string

Bearer accessToken

Request Body

Name
Type
Description

object

Stock-taking schema

Response

{
    "_cloudId": <int>,
    "_warehouseId": <long>,
    "_stockTransactionId": <long>,
    "statusWebhookUrl": <string>
}

Response from the GET request on the URL from statusWebhookUrl

{
    "status": <string>,
    "reason": <string>,
    "message": <string>
}

Possible values of the status field:

  • PROCESSING

  • FINISHED

  • FAILED

Possible values of the reason field:

  • STOCK_TAKING_DATE_IN_FUTURE

  • PRODUCT_DOES_NOT_EXIST

  • PRODUCT_STOCK_TAKING_IN_FUTURE

  • PRODUCT_STOCK_TAKING_AFTER_DATE

  • UNEXPECTED

Examples:

{
    "status": "FINISHED"
}
{
    "status": "FAILED",
    "reason": "STOCK_TAKING_DATE_IN_FUTURE",
    "message": "The stock-taking date cannot be in the future."
}
{
    "status": "FAILED",
    "reason": "PRODUCT_STOCK_TAKING_AFTER_DATE",
    "message": "Some products have a stock-taking after the stock-taking date."
}

Get last stock-taking dates schema

_productIds array Array of product IDs to get the last stock-taking dates for.

Get last stock-taking dates request

{
    "_productIds": [
        <long>,
        ...
    ]
}

Get last stock-taking dates

POST https://api.dotykacka.cz/v2/clouds/:cloudId/warehouses/:warehouseId/stock-taking-dates

Get last stock-taking dates for the specified warehouse and products. These dates can be used to prepare a valid stockTakingDate for the stock-taking endpoint.

Path Parameters

Name
Type
Description

cloudId*

integer

warehouseId*

integer

Headers

Name
Type
Description

Authorization*

string

Bearer accessToken

Request Body

Name
Type
Description

object

Get stock-taking dates schema

Response

[
    {
        "_productId": <long>,
        "lastStockTakingDate": <timestamp>
    },
    ...
]

Note: Only the products that participated in any stock-taking in the history are included in the response. Products without any stock-taking will not be mentioned in the response.

Last updated