API Reference
The Warehouse Client communicates with Business Central exclusively via an OData v4 API.
This reference is aimed at integrators and administrators who want to understand or extend the
interface. For normal use of the app, it is not required.
| Property |
Value |
| Publisher |
altenbrand |
| API group |
mcWarehouse |
| Version |
v1.0 |
| Base path |
/api/altenbrand/mcWarehouse/v1.0/companies({id})/… |
| Authentication |
OAuth2 (Microsoft Entra ID), see App at a Glance |
| Permission |
Permission Set ALN MCWC API User (read) |
Read endpoints vs. actions
Read access (GET) goes through OData entities. Write operations (posting,
locking, labels) go through bound actions (POST), each of which checks license and
terminal-module access.
Read endpoints (entities)
| Entity Set |
Source |
Purpose |
setup |
MC Warehouse Setup |
Effective configuration/defaults |
terminals |
MC Warehouse Terminal |
Terminal registration & metadata (RIMD) |
termShipAgs |
Terminal Ship. Agent |
Allowed shipping agents per terminal |
packages |
MC Warehouse Package |
Packages per shipment (multi-package) |
pickDocuments / pickLines |
Pick Document / Pick Line |
Pick lists and lines |
scanLogEntries |
Scan Log |
Audit log of the scans |
openOrders |
Sales Header |
Released orders for pick lists |
purchaseOrders / purchaseLines |
Purchase Header / Line |
Purchase orders for goods receipt |
salesLines |
Sales Line |
Order lines |
salesShipments |
Sales Shipment Header |
Posted shipments |
itemLookups |
Item |
Item lookup (EAN/barcode) |
itemLedgers |
Item Ledger Entry |
Inventory entries |
postedInvoices / postedInvLines |
Sales Invoice Header / Line |
Posted invoices (return/complaint) |
whseActivities / whseActLines |
Warehouse Activity Header / Line |
BC warehouse documents |
shipmentLabels / shipmentLines |
MC Shipment Label / Line |
Shipping labels (Hub) |
complaints |
MC Warehouse Complaint |
Complaints |
assignmentLocks |
MC Warehouse Assignment Lock |
Document locks |
Actions (POST)
All write operations go through bound actions. Write actions check license and
terminal-module access before execution.
Locking & assignment
| Action |
Purpose |
AcquireLock / ReleaseLock |
Lock/release a document for a terminal |
GetNextShipment |
Assign the next shipment to the terminal |
Goods receipt
| Action |
Purpose |
PostLineReceipt |
Post the receipt of a purchase line |
PostOrderReceipt |
Post the entire purchase order as received |
Goods issue & shipping
| Action |
Purpose |
CalculateShipWeight |
Calculate the shipping weight of an order |
AddPackage / GetPackageCount |
Add a package / package count per shipment |
PostShipment |
Post the shipment (optionally with invoice) |
CreateShipmentLabel |
Create a shipping label via the shipment connector |
GetShipmentLabelData / GetShipmentLabelByShipmentNo |
Retrieve label data (Base64) |
GetPackingListPdf |
Retrieve the packing list as PDF |
GetShipmentNotifications / GetShipmentConfirmations |
Shipment notifications/confirmations |
GetShippingAgents |
Allowed shipping agents of the terminal |
Warehouse activity
| Action |
Purpose |
ReleaseOrder |
Release an order for warehouse activity |
RegisterPick |
Register a BC warehouse document |
FindActivityByBarcode / GetOpenActivityCount |
Find a warehouse document by barcode / count open ones |
Item, serials & bin
| Action |
Purpose |
LookupBarcode / LookupBarcodeWithUOM |
Resolve an item by barcode (incl. unit) |
ValidateSerialNo / ValidateSerialNoForShipment |
Validate a serial number |
AssignShelf / ValidateShelfCode |
Putaway / validate the bin code |
GetPendingPutawayItems / GetItemShelfInfo / GetItemBinContents |
Putaway and bin information |
Labels, photo & weighing
| Action |
Purpose |
PrintItemLabel / GetLabelItemInfo |
Item/bin label (ZPL) |
UploadPhoto / GetPhotos / GetPhotoCount / DeletePhoto |
Manage document photos |
GetItemWeightInfo / SaveItemWeight |
Read/save item weights |
Return & complaint
| Action |
Purpose |
PostReturn |
Post a return as a credit memo |
PostServiceReturn |
Post a return as a return order |
PostComplaint / UpdateComplaintStatus |
Record a complaint / change status |
Configuration & miscellaneous
| Action |
Purpose |
GetEffectiveConfig |
Effective configuration incl. terminal overrides |
GetModuleCounts |
Badge counters per module for the main menu |
ValidateSettingsPin |
Validate the settings PIN |
GetCompanyInfo |
Company name and logo (for the app header) |
Next steps