Dragon Guard maintains a company-scoped product catalog in which every item record carries master data (UOM, barcodes, tracking flags, dimensions), inventory policy flags such asDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/CodexaCP/DG_BACK/llms.txt
Use this file to discover all available pages before exploring further.
AllowNegativeAvailable, and optional image attachments. All catalog endpoints are tenant-isolated: the resolved CompanyId from the JWT or the optional ?companyId= override is enforced on every query and mutation.
Items
List items
activeOnly=true is the default. Pass activeOnly=false to include inactive
items (useful for admin audit views).Override company. Resolved from JWT when omitted.
Filter to active items only.
Free-text match on
itemNo, description, uom, or itemType.1-based page number.
Records per page.
PagedResponse<ItemDto>
UUID primary key.
Business item number (e.g.
ITM-000001 or ERP code).Item description.
Primary unit of measure.
Active flag.
Whether the item permits negative available inventory.
Type classification (e.g.
Inventory, Service).Primary barcode.
Base unit of measure used for conversions.
Category classification code.
Brand name.
ABC inventory classification.
List of
{id, url, isPrimary} image summaries.Get item by ID
ItemDetailDto which includes all ItemDto fields plus:
Sales unit of measure.
Purchase unit of measure.
UOM conversion factor.
Lot tracking flag.
Serial tracking flag.
Expiration date tracking flag.
Weight per unit.
Volume per unit.
Physical length.
Physical width.
Physical height.
Manufacturer part number.
Alternative item code.
Current on-hand quantity from
CurrentStock.Quantity pending on open receiving lines.
Quantity committed on open shipment lines.
On-hand minus qty on sales order.
true when on-hand ≤ 0.Get item by item number
GET /api/items/{id}. For GrupoMASNative tenants this endpoint proxies to the MAS item-lookup service first; it falls back to the local catalog automatically when the provider is unavailable.
Create item
Only allowed for Standalone tenants. GrupoMASNative, GenericApi, and
BusinessCentralNative tenants must manage items through their ERP integration.
Creating on an ERP-managed tenant returns
409 Conflict with
messageKey: "validation.itemsErpManaged". Requires ADMIN or SUPERVISOR role.CreateItemDto)
Item description.
Primary unit of measure.
Item type classification.
Primary barcode.
Alternate barcode.
Manufacturer part number.
Alternative item code.
Enable lot tracking.
Enable serial tracking.
Enable expiration tracking.
Permit negative available inventory. Defaults to
false for new items.Weight per unit.
Volume per unit.
Base unit of measure.
Sales unit of measure.
Purchase unit of measure.
Category code.
Brand name.
Opening stock quantity. When > 0, an
InventoryMovement with
movementType = "WEB_CREATION" is written to the resolved bin.Target location for initial stock.
Target bin for initial stock. Falls back to tenant default bin.
List of
{url, isPrimary} image objects.DocumentSequences row with documentType = "ITEM_CREATED" using format ITM-NNNNNN.
Update item
CreateItemDto (via UpdateItemDto) plus isActive. If images is supplied, existing images are replaced entirely.
Item Images
Upload an image
itemId and stores the URL.
Image file (
.jpg, .jpeg, .png, or .webp, max 5 MB).UUID of the item to attach the image to.
ItemImageDto
Bulk Import & Export
Dragon Guard supports Excel-based bulk operations using theITEMS_MASTER configuration package format, validated by an embedded __wms_package metadata sheet.
Export items as Excel
items_config_package.xlsx with all current items plus a pre-populated LocationCode/BinCode column pair drawn from the tenant default warehouse.
Preview an import
Excel file (
.xlsx).CREATE vs UPDATE, validation errors, and a confirmationToken to use when applying.
Apply an import
Excel file (
.xlsx).Token from preview response.
ItemNo, Description, UOM, BaseUOM, SalesUOM, PurchaseUOM, ItemType, IsActive, Barcode, AltBarcode, IsLotTracked, IsSerialTracked, IsExpirationTracked, UnitWeight, UnitVolume, Length, Width, Height, CategoryCode, Brand, ABCClass, Part_No, Alternative_Code, AllowNegativeAvailable.
Optional trailing columns: LocationCode, BinCode. When omitted the tenant default location/bin is applied.
Stock Queries
Basic stock
(itemId, binId, stockQty) tuples for all current stock in the active company.
Override company. Resolved from JWT when omitted.
Page number.
Records per page.
Enriched stock
StockEnrichedDto per row:
Item number.
Item description.
Unit of measure.
Bin code where stock is held.
Location code of the bin.
Quantity on hand in this bin.
Whether the bin allows picking.
Whether the bin allows putaway.
Whether the bin is currently blocked.
First image URL for the item.
Override company. Resolved from JWT when omitted.
Filter by item number, description, bin code, or location code.
Page number.
Records per page.
Handheld Product Inquiry
Theproducts-inquiry endpoint is purpose-built for the Dragon Guard mobile handheld. It returns a flat list — one row per ItemNo + Location + Bin — and is the preferred catalog view for handheld devices because it includes items with zero or negative stock.
Override company. Resolved from JWT when omitted.
Free-text search across item number, description, barcode, alternate code, location, and bin.
Filter to a specific warehouse location.
Restrict results to items with quantity > 0.
Page number.
Page size.
GrupoMasItemLookupPageDto)
Paged item rows with
itemNo, description, barcode, locationCode, binCode, quantity, imageUrl, etc.Sum of
quantity across all matching rows. Only populated when search or
locationCode is provided — returns 0 for full unfiltered requests to avoid
expensive aggregation.Total matching rows.
Total pages.
GrupoMASNative tenants: this endpoint proxies to the MAS
/api/wms/items/lookup service using the tenant’s company code. If MAS is
unavailable, Dragon Guard falls back to the local catalog automatically.Handheld locations dropdown
{ locationCode: "", locationDescription: "Todos" } option as the default “all locations” selection.
For GrupoMASNative tenants, the list is sourced from MAS /api/wms/locations with the same automatic fallback to local locations.
The allowNegativeAvailable Flag
For historical items that predate this constraint, the database migration sets allowNegativeAvailable = true to preserve existing overselling behavior. You can audit and tighten this flag per item using PUT /api/items/{id}.