API - Pallets


Overview

The endpoint is a non-editable list of Pallets.

Endpoint name

pallets

Source table

WiFi Pallet Entry

Fixed view

Only shows pallets that still exist, i.e. have not been shipped away. (status <> Gone)

Requests allowed

GET (data changes only via procedures)

Primary key

barcode

Record ID

barcode

Child Objects

Available with $expand: openTradeItems

Procedures

Trade items on the pallet:

addTradeItem, addBarcodedTradeItem, removeTradeItem, removeBarcodedTradeItem

Reserving trade items:

reserveToAgreement, reserveToAgreementLine, unreserve

Shipping:

loadToTransportUnit, unloadFromTransportUnit


Data

Field List

Property

Type

Format

Description


1

systemId

string

uuid

SystemId

non-editable

2

barcode

string

max 20

Barcode

Record ID

primary key

3

palletNo

string

max 20

Pallet No.


4

physicalPalletId

string

max 20

Physical Pallet ID


5

locationCode

string

max 10

Location Code


6

stockCenterId

string

uuid

SystemId of the stock center in Stock Center Code


7

stockCenterCode

string

max 20

Stock Center Code


8

fishingTripNo

string

max 20

Fishing Trip No.


9

ownItems

boolean


Contains Own Items


10

storageItems

boolean


If it is a stored pallet owned by another company.


11

grossWeight

number

decimal

Gross Weight (Manual)


12

palletStandardCode

string

max 20

Pallet Standard Code


13

keyItemId

string

uuid

SystemId of the item in Key Item No.


14

keyItemNo

string

max 20

Key Item No. may be blank at creation; it will be populated when items are posted on the pallet.


15

keyItemDescription

string

max 100

The key item description


16

itemCategoryId

string

uuid

Item Category Id


17

itemCategoryCode

string

max 20

Item Category Code


18

noOfTIs

number

decimal

TIs on Pallet


19

maximumTradeItems

integer


WP Maximum no. of Trade Items


20

quantity

number

decimal

Qty. on Pallet


21

incomingQuantity

number

decimal

Quantity in unprocessed MES Output/Receipt transaction lines for this pallet


22

totalQuantity

number

decimal

quantity + incomingQuantity


23

status

string

enum

For example, Empty, Open or Full. Options: Open, Full, Empty, Gone, Precreated


24

containsLot

string

max 20

Lot Code on Pallet (Max)


25

firstExpirationDate

string

date

First Expiration Date


26

tradeItemsOnHoldStatus

number

decimal

TIs on Hold Status


27

agreementType

string

enum

Usually “Delivery” but can be “Production”. Options: Delivery, Production, Receipt, Storage Shipment, Blanket


28

agreementNo

string

max 20

Agreement No.


29

zoneCode

string

max 10

Zone Code, if pallet warehouse is used.


30

binCode

string

max 20

Bin Code, if pallet warehouse is used.


31

aisleCode

string

max 10

Aisle Code


32

pickingStatus

string

enum

Picking Status. Options: (blank), Suggested, Pre-Reserved, Confirmed, Finished


33

scheduledTripNo

string

max 20

Scheduled Trip No.


34

transportUnitID

integer


Transport Unit ID


35

loaded

boolean


Loaded


36

loadingDateTime

string

date-time

Loading Date-Time


37

dateCreated

string

date

Date of creation


38

systemRowVersion

integer


System row version. Increments every time the record is modified.

non-editable

39

lastModified

string

date-time

SystemModifiedAt (date and time of last change)

non-editable

40

modifiedByUser

string


The user who last modified the record

non-editable

41

openTradeItems

array

json

A list of all the trade items that are currently on the pallet.



Object Example

JSON
{
    "barcode": "00050000000000001101",
    "systemId": "2b1f012c-34b6-ef11-b019-f3051338724d",
    "palletNo": "000000000110",
    "physicalPalletId": "99050000000000001101",
    "locationCode": "BLUE",
    "stockCenterId": "4a7c9e12-34b6-ef11-b019-f3051338724d",
    "stockCenterCode": "STOR-CUST-1",
    "fishingTripNo": "",
    "ownItems": false,
    "storageItems": true,
    "grossWeight": 0,
    "palletStandardCode": "",
    "keyItemId": "00684ed0-9ea1-ef11-b017-aa2d6f3d6955",
    "keyItemNo": "0900",
    "keyItemDescription": "Þorskflök, 10kg box",
    "itemCategoryId": "00000000-0000-0000-0000-000000000000",
    "itemCategoryCode": "",
    "noOfTIs": 40,
    "maximumTradeItems": 40,
    "quantity": 400,
    "incomingQuantity": 0,
    "totalQuantity": 400,
    "status": "Full",
    "containsLot": "LOT0044",
    "firstExpirationDate": "0001-01-01",
    "tradeItemsOnHoldStatus": 0,
    "agreementType": "Storage Shipment",
    "agreementNo": "SS-003",
    "zoneCode": "STORAGE",
    "binCode": "RECEIVING",
    "aisleCode": "",
    "pickingStatus": " ",
    "scheduledTripNo": "",
    "transportUnitID": 0,
    "loaded": false,
    "loadingDateTime": "0001-01-01T00:00:00Z",
    "dateCreated": "2024-12-09",
    "systemRowVersion": 2583310,
    "lastModified": "2025-10-21T15:46:14.383Z",
    "modifiedByUser": ""
}

Procedures

Actions are called on a specific pallet: POST pallets('<barcode>')/Microsoft.NAV.<actionName> with a JSON body of parameters. Each action returns a text message on success. On failure it returns an error with a readable message.

Procedure

Parameters

Description

Details

addTradeItem

tradeItemStage (text), tradeItemLine (int)

Add a trade item, identified by stage and line, to the pallet. If the trade item is already on another pallet, it is first removed from that pallet and then added to this one (it moves pallets).

Show more

addBarcodedTradeItem

tradeItemBarcode (text)

Add a trade item identified by its barcode. Posted trade items are moved onto the pallet. If none is found, trade items from MES transactions that are not yet posted are searched. Returns an error if neither exists.

Show more

removeTradeItem

tradeItemStage (text, max 20), tradeItemLine (int)

Remove a trade item, identified by stage and line, from the pallet.

Show more

removeBarcodedTradeItem

tradeItemBarcode (text, max 22)

Remove a trade item, identified by its barcode, from the pallet.

Show more

reserveToAgreement

agreement (text, max 20)

Reserve the pallet to a delivery agreement. An agreement line that fits the pallet is selected automatically.

Show more

reserveToAgreementLine

agreement (text, max 20), agreementLineNo (int)

Reserve the pallet to a specific delivery agreement line. The line must fit the pallet.

Show more

unreserve

none

Remove the pallet's current reservation.

Leaves it ready to be reserved to another agreement.

Show more

loadToTransportUnit

transportUnit (int)

Load the pallet onto a transport unit.

Show more

unloadFromTransportUnit

transportUnit (int)

Unload the pallet from a transport unit.

Show more


Trade items

Add Trade Item

To add a trade item to a pallet, the trade item stage and line no. are given as parameters to procedure addTradeItem:

JSON
POST
.../pallets([record-id])/Microsoft.NAV.addTradeItem

Body:
{
    "tradeItemStage" : "PS1",
    "tradeItemLine" : 11
}

Parameters

Type

Max Len

Description


tradeItemStage

string

20

The stage of the trade item

mandatory

tradeItemLine

integer


The line no. of the trade item

mandatory

If successful, the trade item is on the pallet and the response is: Trade Item <Stage>-<Line No.> added to pallet <Pallet No.>.

  • If the trade item is already on another pallet, it is first removed from that pallet and then added to this one (it moves pallets).

  • If the trade item is already on this pallet, this is not an error. The call succeeds and the response is: Trade Item <Stage>-<Line No.> is already on this pallet <Pallet No.>.

Possible errors:

  • Pallet with barcode <barcode> does not exist.

  • The trade item stage/line does not exist (standard Business Central error).

  • Trade Item <Stage>-<Line No.> and pallet <Pallet No.> have different reservations. The trade item cannot be added to the pallet.

  • Pallet <Pallet No.> has status <Status> that does not allow adding trade items. (when the pallet status is Full or Reserved)

  • Trade Item <Stage>-<Line No.> has item <Item No.>, which does not match key item <Key Item No.> on pallet <Pallet No.>. (when item mixing is not allowed)

  • Trade Item <Stage>-<Line No.> has lot <Lot>, which does not match lot <Lot> on pallet <Pallet No.>. (when lot mixing is not allowed)

  • Any error from removing the trade item from its previous pallet.

  • Parameter <name> is too long (<n> characters), the maximum is <max>.


Add Barcoded Trade Item

To add a trade item to a pallet using the trade item barcode, use procedure addBarcodedTradeItem:

JSON
POST
.../pallets([record-id])/Microsoft.NAV.addBarcodedTradeItem

Body:
{
    "tradeItemBarcode" : "0123456789012345678901"
}

Parameters

Type

Max Len

Description


tradeItemBarcode

string

22

The barcode of the trade item to add to the pallet

mandatory

If successful, the trade item is on the pallet and the response is: Trade Item <Stage>-<Line No.> added to pallet <Pallet No.>.

  • If the trade item is already on another pallet, it is first removed from that pallet and then added to this one (it moves pallets).

  • If the trade item is already on this pallet, this is not an error. The call succeeds and the response is: Trade Item <Stage>-<Line No.> is already on this pallet <Pallet No.>.

  • If no posted trade item has this barcode, the API looks for an unposted trade item coming from MES (an unprocessed MES transaction) with this barcode and assigns the pallet to it. The response is then: Trade Item (in Prod. Tr.) with barcode <trade item barcode> added to pallet with barcode <pallet barcode>.

Possible errors:

  • Pallet with barcode <barcode> does not exist.

  • Trade Item with barcode <barcode> not found.

  • Trade Item <Stage>-<Line No.> and pallet <Pallet No.> have different reservations. The trade item cannot be added to the pallet.

  • Pallet <Pallet No.> has status <Status> that does not allow adding trade items. (when the pallet status is Full or Reserved)

  • Trade Item <Stage>-<Line No.> has item <Item No.>, which does not match key item <Key Item No.> on pallet <Pallet No.>. (when item mixing is not allowed)

  • Trade Item <Stage>-<Line No.> has lot <Lot>, which does not match lot <Lot> on pallet <Pallet No.>. (when lot mixing is not allowed)

  • Any error from removing the trade item from its previous pallet.

  • Parameter <name> is too long (<n> characters), the maximum is <max>.


Remove Trade Item

To remove a trade item from a pallet, the trade item stage and line no. are given as parameters to procedure removeTradeItem:

JSON
POST
.../pallets([record-id])/Microsoft.NAV.removeTradeItem

Body:
{
    "tradeItemStage" : "PRODUCTION",
    "tradeItemLine" : 64
}

Parameters

Type

Max Len

Description


tradeItemStage

string

20

The stage of the trade item

mandatory

tradeItemLine

integer


The line no. of the trade item

mandatory

If successful, the open trade item is removed from the pallet and the response is: Trade Item <Stage>-<Line No.> removed from pallet <Pallet No.>.

Note: When the last trade item is removed, the pallet gets status Empty and its key item no. and reservation (agreement type and agreement no.) are cleared. Otherwise the pallet status becomes Open.

Possible errors:

  • Pallet with barcode <barcode> does not exist.

  • The trade item stage/line does not exist (standard Business Central error).

  • Trade Item <Stage>-<Line No.> is not on pallet <Pallet No.>.

  • Parameter tradeItemStage is too long (<n> characters), the maximum is 20.


Remove Barcoded Trade Item

To remove a trade item from a pallet using the trade item barcode, use procedure removeBarcodedTradeItem:

JSON
POST
.../pallets([record-id])/Microsoft.NAV.removeBarcodedTradeItem

Body:
{
    "tradeItemBarcode" : "0123456789012345678901"
}

Parameters

Type

Max Len

Description


tradeItemBarcode

string

22

The barcode of the trade item to remove from the pallet

mandatory

If successful, the posted open trade item with this barcode is removed from the pallet and the response is: Trade Item <Stage>-<Line No.> removed from pallet <Pallet No.>.

Note: When the last trade item is removed, the pallet gets status Empty and its key item no. and reservation (agreement type and agreement no.) are cleared. Otherwise the pallet status becomes Open.

Note: Unlike addBarcodedTradeItem, this procedure only handles posted trade items, not unposted trade items from MES.

Possible errors:

  • Pallet with barcode <barcode> does not exist.

  • Trade Item with barcode <barcode> not found.

  • Trade Item <Stage>-<Line No.> is not on pallet <Pallet No.>.

  • Parameter tradeItemBarcode is too long (<n> characters), the maximum is 22.


Reservation

Reservation requires the pallet to be available for reservation. Otherwise an error message explains why.

Reserve to an Agreement

To reserve a pallet for a delivery agreement, the number of the agreement is given as a parameter to procedure reserveToAgreement:

JSON
POST
.../pallets([record-id])/Microsoft.NAV.reserveToAgreement

Body:
{
    "agreement" : "DA-0123"
}

Parameters


agreement

Give the delivery agreement number

If successful, the response is: Pallet <Pallet No.> successfully reserved for <Agreement No.>

The API will look for a line on this agreement that fits this pallet. The first suitable line is used.

If reservation is successful, the trade items on the pallet are shown on the Delivery Agreement as reserved.

  • Reserving a pallet reserves every trade item on it to the agreement line. The agreement must be a delivery agreement (Document Type = Delivery).

  • If all trade items on the pallet are already reserved to that agreement line, this is not an error. The call succeeds and the response is: Pallet is already reserved to <Agreement No.> and line <Line No.>!

Possible errors (checked in this order):

  • Pallet Status is <Status>! (when the pallet status is Empty or Gone)

  • There are no Trade Items on the pallet!

  • A trade item on the pallet is not available. The error message is the reason:

    • Reserved for <Agreement Type> <Agreement No.>

    • Reserved for journal entry.

    • Reserved for outbound document.

    • Reserved for consumption entry.

    • <Hold Status> <Hold Reason Code> (when the trade item is on hold)

  • Pallet is mixed with different item numbers, cannot find suitable agreement line!

  • No suitable agreement line found for pallet <Pallet Barcode>! (when no line on the delivery agreement has the pallet's key item no. and a matching lot code filter / original lot filter). Note that this message shows the pallet barcode, not the pallet no.

  • Errors from the Wisefish reservation itself (standard Wisefish/Business Central errors), for example if the agreement does not exist.


Reserve to an Agreement Line

To reserve a pallet for a delivery agreement line, both the agreement number and the line no. are given as parameters to procedure reserveToAgreementLine:

JSON
POST
.../pallets([record-id])/Microsoft.NAV.reserveToAgreementLine

Body:
{
    "agreement" : "DA-0123",
    "agreementLineNo" : 20000
}

Parameters


agreement

Give the delivery agreement number

agreementLineNo

Give the agreement line number

If successful, the response is: Pallet <Pallet No.> successfully reserved for <Agreement No.>

If reservation is successful, the trade items on the pallet are shown on the Delivery Agreement as reserved.

  • Reserving a pallet reserves every trade item on it to the agreement line. The agreement must be a delivery agreement (Document Type = Delivery).

  • If all trade items on the pallet are already reserved to that agreement line, this is not an error. The call succeeds and the response is: Pallet is already reserved to <Agreement No.> and line <Line No.>!

Possible errors (checked in this order):

  • Pallet Status is <Status>! (when the pallet status is Empty or Gone)

  • There are no Trade Items on the pallet!

  • A trade item on the pallet is not available. The error message is the reason:

    • Reserved for <Agreement Type> <Agreement No.>

    • Reserved for journal entry.

    • Reserved for outbound document.

    • Reserved for consumption entry.

    • <Hold Status> <Hold Reason Code> (when the trade item is on hold)

  • Pallet is mixed with different item numbers, cannot find suitable agreement line!

  • No suitable agreement line found for pallet <Pallet Barcode>! (when the given agreement line does not have the pallet's key item no. and a matching lot code filter / original lot filter). Note that this message shows the pallet barcode, not the pallet no.

  • Errors from the Wisefish reservation itself (standard Wisefish/Business Central errors), for example if the agreement does not exist.


Unreserve

To remove the agreement reservation of a pallet, the following method is used:

JSON
POST
.../pallets([record-id])/Microsoft.NAV.unreserve

(no parameters)

If successful, the pallet is no longer reserved on the Agreement.

If successful, the response is: Pallet <Pallet No.> successfully un-reserved for <Agreement No.>.

The reservation of every trade item on the pallet is released. Afterwards the pallet can be reserved to another agreement.

Possible errors:

  • If the pallet is not reserved (no agreement no. on the pallet): a standard Business Central error (no delivery agreement line found).

  • If there are no trade items on the pallet: a standard Business Central error.

  • Errors from the Wisefish release of the reservation.


Loading

Load to Transport Unit

To load a pallet to a transport unit, use procedure loadToTransportUnit:

JSON
POST
.../pallets([record-id])/Microsoft.NAV.loadToTransportUnit

Body:
{
    "transportUnit" : 354
}

Parameters


transportUnit

A transport unit is an integer.

If successful, the response is: Pallet <Pallet No.> successfully loaded to Transport Unit <ID>.

When a pallet has been loaded to a transport unit, it should get:

  • a Scheduled Trip

  • a Transport Unit ID

  • Loaded = true

Note: This is exactly the same method as transportUnits(x).loadPallet. The same functionality is run in the backend.

Possible errors:

  • Transport Unit ID cannot be 0.

  • Transport Unit with ID <ID> not found.

  • Status of Transport Unit <ID> is <Status>, loading a pallet is not allowed. (when the transport unit status is Cancelled, InTransport or TransportCompleted)

  • Pallet <Pallet No.> is already loaded to Transport Unit <ID>.

  • Pallet <Pallet No.> is not reserved to any agreement, it cannot be loaded.


Unload from Transport Unit

To unload a pallet from a transport unit, use procedure unloadFromTransportUnit:

JSON
POST
.../pallets([record-id])/Microsoft.NAV.unloadFromTransportUnit

Body:
{
    "transportUnit" : 354
}

Parameters


transportUnit

A transport unit is an integer.

If successful, the response is: Pallet <Pallet No.> successfully unloaded from Transport Unit <ID>.

When a pallet has been unloaded from a transport unit:

  • Field “Scheduled Trip” is cleared

  • Field “Transport Unit ID” is cleared

  • Loaded = false

  • Field “Loading Date-Time” is cleared

  • The trade items on the pallet get Loaded = false and their Transport Unit ID is removed

Note: This is exactly the same method as transportUnits(x).unloadPallet. The same functionality is run in the backend.

Possible errors:

  • Pallet with barcode <barcode> does not exist.

  • Transport Unit ID cannot be 0.

  • Transport Unit with ID <ID> not found.

  • Status of Transport Unit <ID> is <Status>, unloading a pallet is not allowed. (when the transport unit status is Cancelled, InTransport or TransportCompleted)

  • Pallet <Pallet No.> is not loaded to Transport Unit <ID>.


Examples

Read pallets

Read Full pallets

For example, to read all pallets that are Full:

JSON
GET .../pallets?$filter=status eq 'Full'

Read a single pallet

Reads one pallet by its Record ID (barcode). The response is one pallet object, as shown in Object Example.

JSON
GET .../pallets('0000111122223333600')

Read a pallet with its trade items

Adds the trade items on the pallet to the response with $expand=openTradeItems (the trade item objects are shortened here).

Request:

JSON
GET .../pallets('0000111122223333600')?$expand=openTradeItems

Response:

JSON
{
    "@odata.context": "https://containers.wisefish.com/BC/api/wisefish/base/v1.0/$metadata#pallets(openTradeItems())/$entity",
    "barcode": "0000111122223333600",
    "systemId": "7d2e41a8-5c90-f011-b01f-c3a1e2b9d417",
    "palletNo": "000000000110",
    "physicalPalletId": "",
    "locationCode": "BLUE",
    "stockCenterId": "4a7c9e12-34b6-ef11-b019-f3051338724d",
    "stockCenterCode": "STOR-CUST-1",
    "fishingTripNo": "",
    "ownItems": true,
    "storageItems": false,
    "grossWeight": 0,
    "palletStandardCode": "",
    "keyItemId": "00684ed0-9ea1-ef11-b017-aa2d6f3d6955",
    "keyItemNo": "0900",
    "keyItemDescription": "Þorskflök, 10kg box",
    "itemCategoryId": "00000000-0000-0000-0000-000000000000",
    "itemCategoryCode": "",
    "noOfTIs": 2,
    "maximumTradeItems": 40,
    "quantity": 20,
    "incomingQuantity": 0,
    "totalQuantity": 20,
    "status": "Open",
    "containsLot": "LOT0044",
    "firstExpirationDate": "0001-01-01",
    "tradeItemsOnHoldStatus": 0,
    "agreementType": "Delivery",
    "agreementNo": "",
    "zoneCode": "",
    "binCode": "",
    "aisleCode": "",
    "pickingStatus": " ",
    "scheduledTripNo": "",
    "transportUnitID": 0,
    "loaded": false,
    "loadingDateTime": "0001-01-01T00:00:00Z",
    "dateCreated": "2025-10-20",
    "systemRowVersion": 2590114,
    "lastModified": "2025-10-21T09:12:40.117Z",
    "modifiedByUser": "",
    "openTradeItems": [
        {
            "systemId": "b3c8f0a2-6d91-f011-b01f-c3a1e2b9d417",
            "stage": "PS1",
            "lineNo": 11,
            "itemNo": "0900",
            "description": "Þorskflök, 10kg box",
            "lot": "LOT0044",
            "tradeItems": 1,
            "tradeItemUnitOfMeasure": "BOX",
            "quantityBase": 10,
            "baseUnitOfMeasure": "KG",
            "palletBarcode": "0000111122223333600",
            "palletNo": "000000000110",
            "tradeItemBarcode": "",
            "holdStatus": " ",
            "reservedToDocumentType": "Delivery",
            "reservedToDocumentNo": ""
        },
        {
            "systemId": "b4c8f0a2-6d91-f011-b01f-c3a1e2b9d417",
            "stage": "PS1",
            "lineNo": 12,
            "itemNo": "0900",
            "description": "Þorskflök, 10kg box",
            "lot": "LOT0044",
            "tradeItems": 1,
            "tradeItemUnitOfMeasure": "BOX",
            "quantityBase": 10,
            "baseUnitOfMeasure": "KG",
            "palletBarcode": "0000111122223333600",
            "palletNo": "000000000110",
            "tradeItemBarcode": "",
            "holdStatus": " ",
            "reservedToDocumentType": "Delivery",
            "reservedToDocumentNo": ""
        }
    ]
}

Add and remove trade items

Add a trade item by stage and line

Adds trade item PS1-11 to pallet 0000111122223333600 using addTradeItem.

Request:

JSON
POST
.../pallets('0000111122223333600')/Microsoft.NAV.addTradeItem

Body:
{
    "tradeItemStage" : "PS1",
    "tradeItemLine" : 11
}

Response:

JSON
{
    "@odata.context": "https://containers.wisefish.com/BC/api/wisefish/base/v1.0/$metadata#Edm.String",
    "value": "Trade Item PS1-11 added to pallet 000000000110."
}

Add a trade item by barcode

Adds the trade item with barcode 0123456789012345678901 to pallet 00050000000000001101 using addBarcodedTradeItem.

Request:

JSON
POST
.../pallets('00050000000000001101')/Microsoft.NAV.addBarcodedTradeItem

Body:
{
    "tradeItemBarcode" : "0123456789012345678901"
}

Response:

JSON
{
    "@odata.context": "https://containers.wisefish.com/BC/api/wisefish/base/v1.0/$metadata#Edm.String",
    "value": "Trade Item PRODUCTION-64 added to pallet 000000000110."
}

Remove a trade item by stage and line

Removes trade item PRODUCTION-64 from pallet 00050000000000001101 using removeTradeItem.

Request:

JSON
POST
.../pallets('00050000000000001101')/Microsoft.NAV.removeTradeItem

Body:
{
    "tradeItemStage" : "PRODUCTION",
    "tradeItemLine" : 64
}

Response:

JSON
{
    "@odata.context": "https://containers.wisefish.com/BC/api/wisefish/base/v1.0/$metadata#Edm.String",
    "value": "Trade Item PRODUCTION-64 removed from pallet 000000000110."
}

Remove a trade item by barcode

Removes the trade item with barcode 0123456789012345678901 from pallet 00050000000000001101 using removeBarcodedTradeItem.

Request:

JSON
POST
.../pallets('00050000000000001101')/Microsoft.NAV.removeBarcodedTradeItem

Body:
{
    "tradeItemBarcode" : "0123456789012345678901"
}

Response:

JSON
{
    "@odata.context": "https://containers.wisefish.com/BC/api/wisefish/base/v1.0/$metadata#Edm.String",
    "value": "Trade Item PRODUCTION-64 removed from pallet 000000000110."
}


Reserve and unreserve

Reserve a pallet to an agreement

Reserves pallet 00123456789 to delivery agreement SA000123 using reserveToAgreement.

POST .../pallets('00123456789')/Microsoft.NAV.reserveToAgreement
{ "agreement": "SA000123" }

Reserve a pallet to an agreement line

Reserves pallet 0000111122223333600 to line 10000 of delivery agreement SA000123 using reserveToAgreementLine.

Request:

JSON
POST
.../pallets('0000111122223333600')/Microsoft.NAV.reserveToAgreementLine

Body:
{
    "agreement" : "SA000123",
    "agreementLineNo" : 10000
}

Response:

JSON
{
    "@odata.context": "https://containers.wisefish.com/BC/api/wisefish/base/v1.0/$metadata#Edm.String",
    "value": "Pallet 000000000110 successfully reserved for SA000123"
}

Unreserve a pallet

Releases the reservation of pallet 0000111122223333600 using unreserve.

Request:

JSON
POST
.../pallets('0000111122223333600')/Microsoft.NAV.unreserve

(no parameters)

Response:

JSON
{
    "@odata.context": "https://containers.wisefish.com/BC/api/wisefish/base/v1.0/$metadata#Edm.String",
    "value": "Pallet 000000000110 successfully un-reserved for SA000123."
}


Load and unload

Load a pallet to a transport unit

Loads pallet 00050000000000001101 to transport unit 354 using loadToTransportUnit.

Request:

JSON
POST
.../pallets('00050000000000001101')/Microsoft.NAV.loadToTransportUnit

Body:
{
    "transportUnit" : 354
}

Response:

JSON
{
    "@odata.context": "https://containers.wisefish.com/BC/api/wisefish/base/v1.0/$metadata#Edm.String",
    "value": "Pallet 000000000110 successfully loaded to Transport Unit 354."
}

Unload a pallet from a transport unit

Unloads pallet 00050000000000001101 from transport unit 354 using unloadFromTransportUnit.

Request:

JSON
POST
.../pallets('00050000000000001101')/Microsoft.NAV.unloadFromTransportUnit

Body:
{
    "transportUnit" : 354
}

Response:

JSON
{
    "@odata.context": "https://containers.wisefish.com/BC/api/wisefish/base/v1.0/$metadata#Edm.String",
    "value": "Pallet 000000000110 successfully unloaded from Transport Unit 354."
}