Hoppa till innehållet

Artiklar

Items/products including stock availability, price calculation, units, attributes and assets. Addressed by itemNumber.

10 anrop GET POST PATCH Bas-URL https://api.erp.fluit.cloud/preview

Autentisering, felkoder, rate limits, idempotens och paginering gäller alla anrop och står samlade under Kom igång.

GET /inventory/availability

List stock availability for many items

Returns stock availability for every stocked item, paginated, with the same per-warehouse breakdown as GET /preview/items/{itemNumber}/availability — including whether movements in that warehouse require serial or batch numbers.

Visa hela beskrivningen

Use this instead of calling the per-item endpoint in a loop: a catalogue of a few thousand SKUs otherwise consumes the entire rate limit budget on every sync cycle. Items with no stock record in any active warehouse are omitted. Pagination is over items, never over warehouse rows, so an item's totals are always complete.

Frågeparametrar

Fält Typ Beskrivning
itemNumbers string Comma-separated item numbers to limit the result to. Max 200 values.
warehouseCode string Restricts the breakdown to one warehouse, in which case the totals cover that warehouse only.
modifiedSince string(date-time) Returns only items whose stock records were created or changed at or after this instant (ISO 8601 UTC datetime). This is what makes a recurring poll cheap.
page integer Page to return, 1-based. Default 1.
pageSize integer Number of records per page. Default 50, max 200.

Svar

200 PagedResult_PublicItemAvailabilityResponse

Paginerat svar: raderna nedan ligger i items[], omgivna av totalCount, page, pageSize, totalPages, hasPreviousPage och hasNextPage. Paginerad

Fält Typ Beskrivning
itemNumber string · nullable Item number of the item.
totalAllocatedQuantity decimal Total quantity reserved for orders across all warehouses. Serialised as a decimal string.
totalAvailableQuantity decimal Total quantity available for new orders (on hand − allocated). Serialised as a decimal string.
totalQuantityOnHand decimal Total physical quantity on hand across all warehouses. Serialised as a decimal string.
warehouses WarehouseAvailability[] · nullable Per-warehouse breakdown. Empty list if the item is not stocked in any warehouse.
400 ProblemDetails itemNumbers held more than 200 values.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable

Standardfel: 401 403 Felhantering

Exempel

curl
curl "https://api.erp.fluit.cloud/preview/inventory/availability" \
  -H "X-Api-Key: fluit_live_sk_..."
Svar 200
{
  "hasNextPage": true,
  "hasPreviousPage": true,
  "items": [
    {
      "itemNumber": "WIDGET-A",
      "totalAllocatedQuantity": "10",
      "totalAvailableQuantity": "10",
      "totalQuantityOnHand": "10",
      "warehouses": [
        {
          "allocatedQuantity": "10",
          "availableQuantity": "10",
          "quantityOnHand": "10",
          "replenishmentType": "Purchase",
          "requiresBatch": true,
          "requiresSerial": true,
          "trackingType": "None",
          "warehouseCode": "MAIN",
          "warehouseName": "Main warehouse"
        }
      ]
    }
  ],
  "page": 1,
  "pageSize": 50,
  "totalCount": 137,
  "totalPages": 3
}

Bas-URL https://api.erp.fluit.cloud/preview. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

GET /items

List items

Returns a paginated list of items for the authenticated tenant. Sorted by item number. Filters combine with AND. Enum filters are matched case-insensitively and an unknown value returns 400.

Visa hela beskrivningen

Delta sync: ?modifiedSince= (ISO 8601 UTC datetime) returns records created or changed at or after that instant, and is the intended way to run an incremental sync. A change anywhere inside the record counts: editing a line moves the parent's modifiedDate too, so no change can hide below the resource level. Newly created items are included even though they have no modifiedDate yet. Deletions are not visible here: a deleted record is really gone, so it simply stops appearing, which is indistinguishable from "unchanged". Poll GET /preview/deletions?deletedSince= alongside this endpoint to learn what was removed.

Frågeparametrar

Fält Typ Beskrivning
search string Matches item number, name and description, case-insensitively and on partial words.
status enum Filters on the item's lifecycle status. Draft PendingApproval Active PhasingOut Discontinued Archived
modifiedSince string(date-time) Returns only records created or changed at or after this instant (ISO 8601 UTC datetime). A change anywhere inside the record counts, including on its lines.
reference string Looks the value up as an identifier: first the item number, then the item's own barcode, then barcodes on alternative units (case, pallet) and finally cross-references such as manufacturer (MPN) and OEM numbers. The identifier that matched is reported per row in matchedOn. Barcodes are not guaranteed unique, so this returns a list rather than one item.
referenceType enum Restricts ?reference= to one cross-reference type instead of searching every identifier. Manufacturer Oem IndustryStandard Superseded Competitor Barcode Custom
itemNumbers string Comma-separated item numbers to fetch in one call, so a change notification covering many items costs one request instead of one each. Max 200 values.
itemType enum Filters on what kind of item it is. StockItem NonStockItem Service Work Kit Phantom Charge VariantMaster
grade enum Filters on the item's quality grade. A B C D
publishOnWeb boolean Filters on whether the item is published to the web channel.
isSellable boolean Filters on whether the item may be sold.
isConfigurable boolean True returns only made-to-order items that have a configuration schema at GET /preview/items/{itemNumber}/configuration; false returns only the plain catalogue items.
isVariant boolean True returns only variants, false only non-variants.
categoryCode string Filters on the stable category code, counting only active and non-deleted assignments. Subcategories are not included — expand the tree client-side. This is also how you build the picker for an ItemSelection feature, by passing its selectableItemCategoryCode.
brandCode string Filters on the brand code.
parentItemNumber string Returns the variants of one variant master, given by its item number.
page integer Page to return, 1-based. Default 1.
pageSize integer Number of records per page. Default 50, max 200.

Svar

200 PagedResult_PublicItemResponse

Paginerat svar: raderna nedan ligger i items[], omgivna av totalCount, page, pageSize, totalPages, hasPreviousPage och hasNextPage. Paginerad

Fält Typ Beskrivning
barcode string · nullable EAN / GTIN barcode or other scanning code. Null if not set.
baseUnitCode string · nullable Code of the item's base unit of measure, e.g. `st`, `kg`. Null if not set.
brandCode string · nullable Stable brand code, usable to correlate against your own brand register. Null if not set.
brandName string · nullable Brand name. Null if not set.
categoryCode string · nullable Stable code of the item's primary-hierarchy category, e.g. `TOOLS-HAND` — the value to pass to `?categoryCode=` and the one a feature's `selectableItemCategoryCode` refers to. Null if not categorised.
categoryName string · nullable Name of the item's primary-hierarchy category. Null if not categorised.
countryOfOrigin string · nullable ISO 3166-1 alpha-2 country of manufacture, e.g. `SE`, `CN`. Null if not set.
createdDate string(date-time) UTC timestamp when the item was created.
decimalPlaces integer Number of decimals allowed on quantities for this item (0–6). Quantities with more decimals are rejected.
depth decimal · nullable Depth in centimetres. Serialised as a decimal string. Null if not set.
description string · nullable Long-form description, e.g. for a product page. Null if not set.
grade enum Item condition grade (A/B/C-stock) exposed via the Public API. Mirrors `Domain.Items.Grade`. A B C D
height decimal · nullable Height in centimetres. Serialised as a decimal string. Null if not set.
hsCode string · nullable Harmonized System (HS / KN) customs tariff code. Null if not set.
id string(uuid) Internal unique identifier (UUID v7).
isActive boolean Whether the item is active. Inactive items cannot be placed on new orders.
isConfigurable boolean Whether the item is made to order from configurable features (measurements, fabrics, add-ons). True means GET /preview/items/{itemNumber}/configuration returns a configuration schema and the item is ordered through /preview/configurations rather than as a plain order line.
isSellable boolean Whether the item can be sold. False for component-only items.
isStockable boolean Whether the item is held in inventory. False for services, charges and drop-shipped items. Derived from `itemType` — use this rather than matching on the type yourself, so a new item type does not silently change how your integration classifies the item.
itemNumber string · nullable Unique item number — business key, e.g. `WIDGET-PRO`.
itemType enum Item type exposed via the Public API. Mirrors `Domain.Items.ItemType`. StockItem NonStockItem Service Work Kit Phantom Charge VariantMaster
links Links Hypermedia links for a public API resource. Exposed as a computed `links` property on the public response DTOs so that create and read responses carry the same self-reference — the canonical URL is derived from the business key already present on the DTO and can never drift from the route it points at.
matchedOn string · nullable Which identifier the `?reference=` lookup matched on: `ItemNumber`, `Barcode` (the item's own), `PackBarcode` (a barcode on an alternative unit such as a box) or `CrossReference` (manufacturer/OEM number). Null unless `?reference=` was used. A scanner uses this to tell a single unit from a case: a `PackBarcode` match means the scanned code represents several base units, so read `units[]` on the item detail for the conversion factor before booking a quantity.
modifiedDate string(date-time) · nullable UTC timestamp of the last modification. Null if never modified after creation.
name string · nullable Display name / product name.
netWeight decimal · nullable Net weight in kilograms. Serialised as a decimal string to avoid IEEE 754 precision loss. Null if not set.
parentItemNumber string · nullable Item number of the variant master this item belongs to. Null unless the item is a variant.
publishOnWeb boolean Whether the item is published on the webshop.
salesEndDate string(date) · nullable Date until which the item can be sold (ISO 8601 date). Null if unrestricted.
salesPrice decimal · nullable Default sales price in the tenant default currency. Serialised as a decimal string. Null if not set.
salesStartDate string(date) · nullable Date from which the item can be sold (ISO 8601 date). Null if unrestricted.
status enum Item status exposed via the Public API. Mirrors `Domain.Items.ItemStatus`. Draft PendingApproval Active PhasingOut Discontinued Archived
taxClassCode string · nullable Code of the tax class governing VAT for this item, e.g. `STANDARD`. Null if not set, in which case the tenant default applies. Look the rate up via GET /preview/reference/tax-classes — the rate depends on country and date and is therefore not a property of the item.
thumbnailUrl string · nullable URL to the item's thumbnail image. Null if no image is set.
width decimal · nullable Width in centimetres. Serialised as a decimal string. Null if not set.
400 ProblemDetails An enum filter (status, referenceType, itemType, grade) got a value outside its list, or itemNumbers held more than 200 values.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable

Standardfel: 401 403 Felhantering

Exempel

curl
curl "https://api.erp.fluit.cloud/preview/items" \
  -H "X-Api-Key: fluit_live_sk_..."
Svar 200
{
  "hasNextPage": true,
  "hasPreviousPage": true,
  "items": [
    {
      "barcode": "string",
      "baseUnitCode": "st",
      "brandCode": "STD",
      "brandName": "Fluit",
      "categoryCode": "STD",
      "categoryName": "Hand tools",
      "countryOfOrigin": "string",
      "createdDate": "2026-06-11T09:24:13.418",
      "decimalPlaces": 2,
      "depth": "299.00",
      "description": "string",
      "grade": "A",
      "height": "299.00",
      "hsCode": "STD",
      "id": "0f8b2c1e-4d3a-4b7e-9f10-2a6c5d8e1b44",
      "isActive": true,
      "isConfigurable": true,
      "isSellable": true,
      "isStockable": true,
      "itemNumber": "WIDGET-A",
      "itemType": "StockItem",
      "links": {
        "self": "string"
      },
      "matchedOn": "string",
      "modifiedDate": "2026-06-11T09:24:13.418",
      "name": "Widget A",
      "netWeight": "1.250",
      "parentItemNumber": "ABC-001",
      "publishOnWeb": true,
      "salesEndDate": "2026-06-11",
      "salesPrice": "299.00",
      "salesStartDate": "2026-06-11",
      "status": "Draft",
      "taxClassCode": "STD",
      "thumbnailUrl": "https://cdn.fluit.cloud/assets/widget-a-front-thumb.jpg",
      "width": "299.00"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "totalCount": 137,
  "totalPages": 3
}

Bas-URL https://api.erp.fluit.cloud/preview. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

POST /items

Create an item

Creates a new item for the authenticated tenant. Item number is auto-generated if not provided. The response body is the same representation as GET /preview/items/{itemNumber}; the canonical URL is returned in the Location header and in links.self.

Body krävs

Fält Typ Beskrivning
barcode string · nullable EAN / GTIN barcode or other scanning code.
costPrice decimal · nullable Purchase / cost price in the tenant default currency.
countryOfOrigin string · nullable ISO 3166-1 alpha-2 country of manufacture, e.g. `SE`, `CN`.
description string · nullable Long-form description, e.g. for a webshop product page.
hsCode string · nullable Harmonized System (HS / KN) customs tariff code.
itemNumber string · nullable Unique item number. Only uppercase letters, digits, hyphens and underscores are allowed. Auto-generated if omitted.
name Krävs string Display name / product name.
netWeight decimal · nullable Net weight in kilograms.
salesPrice decimal · nullable Default sales price in the tenant default currency.

Svar

201 PublicItemDetailResponse
  • Location — URL of the newly created resource.
Fält Typ Beskrivning
allowBackorder boolean Whether customers can back-order the item when it is out of stock.
allowPreOrder boolean Whether customers can pre-order the item before it is in stock.
attributes ItemAttribute[] · nullable Specification attributes (Material, Energy class, …) as name/value pairs. Empty if none.
barcode string · nullable EAN / GTIN barcode of the base unit. Null if not set.
baseUnitCode string · nullable Code of the item's base unit of measure, e.g. `st`, `kg`. Null if not set.
brandCode string · nullable Stable brand code, usable to correlate against your own brand register. Null if not set.
brandName string · nullable Brand name. Null if not set.
categories ItemCategoryAssignment[] · nullable Category assignments for this item, each with its code, name and whether it belongs to the primary hierarchy. Empty if uncategorised.
costPrice decimal · nullable Purchase / cost price in the tenant default currency. Serialised as a decimal string. Null if not set.
costPriceMethod enum How `costPrice` is maintained. Mirrors `Domain.Items.CostPriceMethod`. Anything other than PublicApi.Preview.Items.Queries.PublicCostPriceMethod.Manual means the ERP recalculates the cost price on stock and supplier price changes — a value written through the API will not necessarily stay put. Manual WeightedAverage LastPurchasePrice PrimarySupplier
countryOfOrigin string · nullable ISO 3166-1 alpha-2 country of manufacture, e.g. `SE`, `CN`. Null if not set.
createdDate string(date-time) UTC timestamp when the item was created.
crossReferences ItemCrossReference[] · nullable Alternative identifiers (manufacturer part numbers, OEM numbers, extra barcodes, …). Empty if none.
decimalPlaces integer Number of decimals allowed on quantities for this item (0–6). Quantities with more decimals are rejected.
defaultReplenishmentType enum How an item is replenished. Mirrors `Domain.Items.ReplenishmentType`. Can be overridden per warehouse. Purchase Manufacture Transfer Assembly
depth decimal · nullable Depth in centimetres. Serialised as a decimal string. Null if not set.
description string · nullable Long-form description, e.g. for a product page. Null if not set.
grade enum Item condition grade (A/B/C-stock) exposed via the Public API. Mirrors `Domain.Items.Grade`. A B C D
height decimal · nullable Height in centimetres. Serialised as a decimal string. Null if not set.
hsCode string · nullable Harmonized System (HS / KN) customs tariff code. Null if not set.
id string(uuid) Internal unique identifier (UUID v7).
isActive boolean Whether the item is active. Inactive items cannot be placed on new orders.
isConfigurable boolean Whether the item is made to order from configurable features (measurements, fabrics, add-ons). True means GET /preview/items/{itemNumber}/configuration returns a configuration schema and the item is ordered through /preview/configurations rather than as a plain order line.
isSellable boolean Whether the item can be sold. False for component-only items.
isStockable boolean Whether the item is held in inventory. False for services, charges and drop-shipped items. Derived from `itemType` — use this rather than matching on the type yourself, so a new item type does not silently change how your integration classifies the item.
itemNumber string · nullable Unique item number — business key, e.g. `WIDGET-PRO`.
itemType enum Item type exposed via the Public API. Mirrors `Domain.Items.ItemType`. StockItem NonStockItem Service Work Kit Phantom Charge VariantMaster
legacyItemNumber string · nullable Item number in the system this item was migrated from. Null if not migrated.
links Links Hypermedia links for a public API resource. Exposed as a computed `links` property on the public response DTOs so that create and read responses carry the same self-reference — the canonical URL is derived from the business key already present on the DTO and can never drift from the route it points at.
modifiedDate string(date-time) · nullable UTC timestamp of the last modification. Null if never modified after creation.
name string · nullable Display name / product name.
netWeight decimal · nullable Net weight in kilograms. Serialised as a decimal string. Null if not set.
parentItemNumber string · nullable Item number of the variant master this item belongs to. Null unless the item is a variant.
publishOnWeb boolean Whether the item is published on the webshop.
salesEndDate string(date) · nullable Date until which the item can be sold (ISO 8601 date). Null if unrestricted.
salesPrice decimal · nullable Default sales price in the tenant default currency. Serialised as a decimal string. Null if not set.
salesStartDate string(date) · nullable Date from which the item can be sold (ISO 8601 date). Null if unrestricted.
status enum Item status exposed via the Public API. Mirrors `Domain.Items.ItemStatus`. Draft PendingApproval Active PhasingOut Discontinued Archived
taxClassCode string · nullable Code of the tax class governing VAT for this item, e.g. `STANDARD`. Null if not set, in which case the tenant default applies. Look the rate up via GET /preview/reference/tax-classes.
thumbnailUrl string · nullable URL to the item's thumbnail image. Null if no image is set.
units ItemUnit[] · nullable All orderable units: the base unit first (factor 1), then alternative units (box, pallet, …) with their conversion factors and barcodes.
variantAttributes ItemVariantAttribute[] · nullable The variant's own attribute values (e.g. Colour=Red, Size=M). Empty unless the item is a variant.
variantAxes ItemVariantAxis[] · nullable The axes this variant master varies on, with the values available on each (e.g. Colour = [Red, Blue], Size = [S, M, L]). Empty unless the item is a variant master. This is the master's side of the relationship — `variantAttributes` above is a single variant's values. Use GET /preview/items/{itemNumber}/variants to enumerate the variants themselves.
volume decimal · nullable Volume in <b>cubic metres</b>, computed from width × height × depth — which are in <b>centimetres</b>. Serialised as a decimal string. Null unless all three dimensions are set.
width decimal · nullable Width in centimetres. Serialised as a decimal string. Null if not set.
400 ProblemDetails A field failed validation, for example an item number containing characters outside A-Z, 0-9, hyphen and underscore.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable

Standardfel: 401 403 Felhantering

Exempel

curl
curl -X POST "https://api.erp.fluit.cloud/preview/items" \
  -H "X-Api-Key: fluit_live_sk_..." \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d @body.json
Full item with pricing and customs
{
  "barcode": "7350100500001",
  "costPrice": "120.00",
  "countryOfOrigin": "SE",
  "description": "High-quality widget for professional use.",
  "hsCode": "84795000",
  "itemNumber": "WIDGET-PRO",
  "name": "Widget Pro 3000",
  "salesPrice": "299.00"
}
Minimal — name only
{
  "name": "Widget Pro 3000"
}
Svar 201
{
  "allowBackorder": true,
  "allowPreOrder": true,
  "attributes": [
    {
      "code": "string",
      "dataType": "Text",
      "name": "Widget A",
      "unit": "st",
      "value": "string"
    }
  ],
  "barcode": "string",
  "baseUnitCode": "st",
  "brandCode": "STD",
  "brandName": "Fluit",
  "categories": [
    {
      "code": "string",
      "isPrimary": true,
      "name": "Hand tools"
    }
  ],
  "costPrice": "299.00",
  "costPriceMethod": "Manual",
  "countryOfOrigin": "string",
  "createdDate": "2026-06-11T09:24:13.418",
  "crossReferences": [
    {
      "isPrimary": true,
      "referenceNumber": "ABC-001",
      "source": "string",
      "type": "Manufacturer"
    }
  ],
  "decimalPlaces": 2,
  "defaultReplenishmentType": "Purchase",
  "depth": "299.00",
  "description": "string",
  "grade": "A",
  "height": "299.00",
  "hsCode": "STD",
  "id": "0f8b2c1e-4d3a-4b7e-9f10-2a6c5d8e1b44",
  "isActive": true,
  "isConfigurable": true,
  "isSellable": true,
  "isStockable": true,
  "itemNumber": "WIDGET-A",
  "itemType": "StockItem",
  "legacyItemNumber": "ABC-001",
  "links": {
    "self": "string"
  },
  "modifiedDate": "2026-06-11T09:24:13.418",
  "name": "Widget A",
  "netWeight": "1.250",
  "parentItemNumber": "ABC-001",
  "publishOnWeb": true,
  "salesEndDate": "2026-06-11",
  "salesPrice": "299.00",
  "salesStartDate": "2026-06-11",
  "status": "Draft",
  "taxClassCode": "STD",
  "thumbnailUrl": "https://cdn.fluit.cloud/assets/widget-a-front-thumb.jpg",
  "units": [
    {
      "barcode": "string",
      "conversionFactor": "299.00",
      "isPurchaseUnit": true,
      "isSalesUnit": true,
      "unitCode": "st"
    }
  ],
  "variantAttributes": [
    {
      "name": "Widget A",
      "value": "string"
    }
  ],
  "variantAxes": [
    {
      "name": "Widget A",
      "values": [
        "string"
      ]
    }
  ],
  "volume": "299.00",
  "width": "299.00"
}

Bas-URL https://api.erp.fluit.cloud/preview. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

GET /items/{itemNumber}

Get an item by item number

Returns the full details of an item by its unique item number: all orderable units with barcodes and conversion factors (base unit first), specification attributes, category assignments, cross-references (MPN/OEM/extra barcodes) and, for variants, the parent item and variant attribute values.

Visa hela beskrivningen

The list endpoint returns a leaner representation without these collections. Responses carry a weak ETag; pass it back in If-None-Match to get 304 Not Modified while the record is unchanged. The validator follows the whole record, so a change to a nested part invalidates it too.

items:read Stödjer ETag

Sökvägsparametrar

Fält Typ Beskrivning
itemNumber Krävs string Item number of the item to read.

Svar

200 PublicItemDetailResponse
  • ETag — Weak validator for this representation. Pass it back in If-None-Match to get 304 Not Modified while the record is unchanged.
Fält Typ Beskrivning
allowBackorder boolean Whether customers can back-order the item when it is out of stock.
allowPreOrder boolean Whether customers can pre-order the item before it is in stock.
attributes ItemAttribute[] · nullable Specification attributes (Material, Energy class, …) as name/value pairs. Empty if none.
barcode string · nullable EAN / GTIN barcode of the base unit. Null if not set.
baseUnitCode string · nullable Code of the item's base unit of measure, e.g. `st`, `kg`. Null if not set.
brandCode string · nullable Stable brand code, usable to correlate against your own brand register. Null if not set.
brandName string · nullable Brand name. Null if not set.
categories ItemCategoryAssignment[] · nullable Category assignments for this item, each with its code, name and whether it belongs to the primary hierarchy. Empty if uncategorised.
costPrice decimal · nullable Purchase / cost price in the tenant default currency. Serialised as a decimal string. Null if not set.
costPriceMethod enum How `costPrice` is maintained. Mirrors `Domain.Items.CostPriceMethod`. Anything other than PublicApi.Preview.Items.Queries.PublicCostPriceMethod.Manual means the ERP recalculates the cost price on stock and supplier price changes — a value written through the API will not necessarily stay put. Manual WeightedAverage LastPurchasePrice PrimarySupplier
countryOfOrigin string · nullable ISO 3166-1 alpha-2 country of manufacture, e.g. `SE`, `CN`. Null if not set.
createdDate string(date-time) UTC timestamp when the item was created.
crossReferences ItemCrossReference[] · nullable Alternative identifiers (manufacturer part numbers, OEM numbers, extra barcodes, …). Empty if none.
decimalPlaces integer Number of decimals allowed on quantities for this item (0–6). Quantities with more decimals are rejected.
defaultReplenishmentType enum How an item is replenished. Mirrors `Domain.Items.ReplenishmentType`. Can be overridden per warehouse. Purchase Manufacture Transfer Assembly
depth decimal · nullable Depth in centimetres. Serialised as a decimal string. Null if not set.
description string · nullable Long-form description, e.g. for a product page. Null if not set.
grade enum Item condition grade (A/B/C-stock) exposed via the Public API. Mirrors `Domain.Items.Grade`. A B C D
height decimal · nullable Height in centimetres. Serialised as a decimal string. Null if not set.
hsCode string · nullable Harmonized System (HS / KN) customs tariff code. Null if not set.
id string(uuid) Internal unique identifier (UUID v7).
isActive boolean Whether the item is active. Inactive items cannot be placed on new orders.
isConfigurable boolean Whether the item is made to order from configurable features (measurements, fabrics, add-ons). True means GET /preview/items/{itemNumber}/configuration returns a configuration schema and the item is ordered through /preview/configurations rather than as a plain order line.
isSellable boolean Whether the item can be sold. False for component-only items.
isStockable boolean Whether the item is held in inventory. False for services, charges and drop-shipped items. Derived from `itemType` — use this rather than matching on the type yourself, so a new item type does not silently change how your integration classifies the item.
itemNumber string · nullable Unique item number — business key, e.g. `WIDGET-PRO`.
itemType enum Item type exposed via the Public API. Mirrors `Domain.Items.ItemType`. StockItem NonStockItem Service Work Kit Phantom Charge VariantMaster
legacyItemNumber string · nullable Item number in the system this item was migrated from. Null if not migrated.
links Links Hypermedia links for a public API resource. Exposed as a computed `links` property on the public response DTOs so that create and read responses carry the same self-reference — the canonical URL is derived from the business key already present on the DTO and can never drift from the route it points at.
modifiedDate string(date-time) · nullable UTC timestamp of the last modification. Null if never modified after creation.
name string · nullable Display name / product name.
netWeight decimal · nullable Net weight in kilograms. Serialised as a decimal string. Null if not set.
parentItemNumber string · nullable Item number of the variant master this item belongs to. Null unless the item is a variant.
publishOnWeb boolean Whether the item is published on the webshop.
salesEndDate string(date) · nullable Date until which the item can be sold (ISO 8601 date). Null if unrestricted.
salesPrice decimal · nullable Default sales price in the tenant default currency. Serialised as a decimal string. Null if not set.
salesStartDate string(date) · nullable Date from which the item can be sold (ISO 8601 date). Null if unrestricted.
status enum Item status exposed via the Public API. Mirrors `Domain.Items.ItemStatus`. Draft PendingApproval Active PhasingOut Discontinued Archived
taxClassCode string · nullable Code of the tax class governing VAT for this item, e.g. `STANDARD`. Null if not set, in which case the tenant default applies. Look the rate up via GET /preview/reference/tax-classes.
thumbnailUrl string · nullable URL to the item's thumbnail image. Null if no image is set.
units ItemUnit[] · nullable All orderable units: the base unit first (factor 1), then alternative units (box, pallet, …) with their conversion factors and barcodes.
variantAttributes ItemVariantAttribute[] · nullable The variant's own attribute values (e.g. Colour=Red, Size=M). Empty unless the item is a variant.
variantAxes ItemVariantAxis[] · nullable The axes this variant master varies on, with the values available on each (e.g. Colour = [Red, Blue], Size = [S, M, L]). Empty unless the item is a variant master. This is the master's side of the relationship — `variantAttributes` above is a single variant's values. Use GET /preview/items/{itemNumber}/variants to enumerate the variants themselves.
volume decimal · nullable Volume in <b>cubic metres</b>, computed from width × height × depth — which are in <b>centimetres</b>. Serialised as a decimal string. Null unless all three dimensions are set.
width decimal · nullable Width in centimetres. Serialised as a decimal string. Null if not set.
304 Tom body.
  • ETag — Weak validator for this representation. Pass it back in If-None-Match to get 304 Not Modified while the record is unchanged.
404 ProblemDetails No item with that item number.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable

Standardfel: 401 403 Felhantering

Exempel

curl
curl "https://api.erp.fluit.cloud/preview/items/{itemNumber}" \
  -H "X-Api-Key: fluit_live_sk_..."
Svar 200
{
  "allowBackorder": true,
  "allowPreOrder": true,
  "attributes": [
    {
      "code": "string",
      "dataType": "Text",
      "name": "Widget A",
      "unit": "st",
      "value": "string"
    }
  ],
  "barcode": "string",
  "baseUnitCode": "st",
  "brandCode": "STD",
  "brandName": "Fluit",
  "categories": [
    {
      "code": "string",
      "isPrimary": true,
      "name": "Hand tools"
    }
  ],
  "costPrice": "299.00",
  "costPriceMethod": "Manual",
  "countryOfOrigin": "string",
  "createdDate": "2026-06-11T09:24:13.418",
  "crossReferences": [
    {
      "isPrimary": true,
      "referenceNumber": "ABC-001",
      "source": "string",
      "type": "Manufacturer"
    }
  ],
  "decimalPlaces": 2,
  "defaultReplenishmentType": "Purchase",
  "depth": "299.00",
  "description": "string",
  "grade": "A",
  "height": "299.00",
  "hsCode": "STD",
  "id": "0f8b2c1e-4d3a-4b7e-9f10-2a6c5d8e1b44",
  "isActive": true,
  "isConfigurable": true,
  "isSellable": true,
  "isStockable": true,
  "itemNumber": "WIDGET-A",
  "itemType": "StockItem",
  "legacyItemNumber": "ABC-001",
  "links": {
    "self": "string"
  },
  "modifiedDate": "2026-06-11T09:24:13.418",
  "name": "Widget A",
  "netWeight": "1.250",
  "parentItemNumber": "ABC-001",
  "publishOnWeb": true,
  "salesEndDate": "2026-06-11",
  "salesPrice": "299.00",
  "salesStartDate": "2026-06-11",
  "status": "Draft",
  "taxClassCode": "STD",
  "thumbnailUrl": "https://cdn.fluit.cloud/assets/widget-a-front-thumb.jpg",
  "units": [
    {
      "barcode": "string",
      "conversionFactor": "299.00",
      "isPurchaseUnit": true,
      "isSalesUnit": true,
      "unitCode": "st"
    }
  ],
  "variantAttributes": [
    {
      "name": "Widget A",
      "value": "string"
    }
  ],
  "variantAxes": [
    {
      "name": "Widget A",
      "values": [
        "string"
      ]
    }
  ],
  "volume": "299.00",
  "width": "299.00"
}

Bas-URL https://api.erp.fluit.cloud/preview. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

PATCH /items/{itemNumber}

Update an item

Partially updates an item. Only provided fields are updated (JSON Merge Patch semantics). Omitted fields are left unchanged. Pass null to clear a nullable field.

Visa hela beskrivningen

Unknown fields are rejected with 400, naming the field and listing the ones this endpoint accepts. itemNumber cannot be changed here — it is the resource's public key and the address external systems reference.

items:write

Sökvägsparametrar

Fält Typ Beskrivning
itemNumber Krävs string Item number of the item to update.

Body krävs

Fält Typ Beskrivning
allowBackorder boolean · nullable Whether customers can back-order the item when it is out of stock.
allowPreOrder boolean · nullable Whether customers can pre-order the item before it is in stock.
barcode string · nullable EAN / GTIN barcode or other scanning code. Pass `null` to clear.
costPrice decimal · nullable Purchase / cost price in the tenant default currency. Pass `null` to clear.
countryOfOrigin string · nullable ISO 3166-1 alpha-2 country of manufacture, e.g. `SE`, `CN`. Pass `null` to clear.
depth decimal · nullable Depth in centimetres. Pass `null` to clear.
description string · nullable Long-form description, e.g. for a webshop product page. Pass `null` to clear.
height decimal · nullable Height in centimetres. Pass `null` to clear.
hsCode string · nullable Harmonized System (HS / KN) customs tariff code. Pass `null` to clear.
itemType enum Item type exposed via the Public API. Mirrors `Domain.Items.ItemType`. StockItem NonStockItem Service Work Kit Phantom Charge VariantMaster
name string · nullable Display name / product name.
netWeight decimal · nullable Net weight in kilograms. Pass `null` to clear.
publishOnWeb boolean · nullable Whether the item is published on the webshop.
salesEndDate string(date) · nullable Date until which the item can be sold. Pass `null` to clear.
salesPrice decimal · nullable Default sales price in the tenant default currency. Pass `null` to clear.
salesStartDate string(date) · nullable Date from which the item can be sold. Pass `null` to clear.
status enum Item status exposed via the Public API. Mirrors `Domain.Items.ItemStatus`. Draft PendingApproval Active PhasingOut Discontinued Archived
width decimal · nullable Width in centimetres. Pass `null` to clear.

Svar

204 Tom body.
400 ProblemDetails The body is not a JSON object, contains a field this endpoint does not have, or a field present in it failed validation.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable
404 ProblemDetails No item with that item number.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable

Standardfel: 401 403 Felhantering

Exempel

curl
curl -X PATCH "https://api.erp.fluit.cloud/preview/items/{itemNumber}" \
  -H "X-Api-Key: fluit_live_sk_..." \
  -H "Content-Type: application/json" \
  -d @body.json
Svar 400
{
  "detail": "string",
  "instance": "string",
  "status": 42,
  "title": "string",
  "type": "string"
}

Bas-URL https://api.erp.fluit.cloud/preview. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

GET /items/{itemNumber}/assets

List item assets

Returns a paginated list of the item's public images and documents, primary image first and then by sort order. Only assets marked as public are included. url points either to an external location or to GET /preview/items/{itemNumber}/assets/{assetId}/download (same API key required).

Visa hela beskrivningen

Use languageCode to pick language-specific assets where present.

items:read Paginerad

Sökvägsparametrar

Fält Typ Beskrivning
itemNumber Krävs string Item number of the item whose assets to list.

Frågeparametrar

Fält Typ Beskrivning
page integer Page to return, 1-based. Default 1.
pageSize integer Number of records per page. Default 50, max 200.

Svar

200 PagedResult_PublicItemAssetResponse

Paginerat svar: raderna nedan ligger i items[], omgivna av totalCount, page, pageSize, totalPages, hasPreviousPage och hasNextPage. Paginerad

Fält Typ Beskrivning
altText string · nullable Alt text for images (SEO/accessibility). Null if not set.
assetType enum Type of an item asset. Mirrors `Domain.Items.AssetType`. Image Document
category enum Category of an item asset. Mirrors `Domain.Items.AssetCategory`. MainImage GalleryImage LifestyleImage TechnicalImage VariantImage Datasheet Manual Certificate SafetySheet Warranty Brochure Installation Firmware Software Other
contentType string · nullable MIME content type, e.g. `image/jpeg`, `application/pdf`.
description string · nullable Free-text description. Null if not set.
displayName string · nullable Display name for UI listings. Null if not set.
fileName string · nullable Original file name, e.g. `widget-pro-front.jpg`.
fileSize integer File size in bytes.
height integer · nullable Image height in pixels. Null for non-images or if unknown.
id string(uuid) Internal unique identifier of the asset.
isPrimary boolean Whether this is the item's primary image (used as thumbnail in item responses).
languageCode string · nullable ISO 639-1 language code if the asset is language-specific, e.g. `sv`. Null if language-neutral.
sortOrder integer Sort order for galleries (ascending).
thumbnailUrl string · nullable URL to a thumbnail rendition. Null if no thumbnail exists.
url string · nullable URL to download the full asset. Either an external URL or a /preview download endpoint (requires the same API key).
width integer · nullable Image width in pixels. Null for non-images or if unknown.
404 ProblemDetails No item with that item number.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable

Standardfel: 401 403 Felhantering

Exempel

curl
curl "https://api.erp.fluit.cloud/preview/items/{itemNumber}/assets" \
  -H "X-Api-Key: fluit_live_sk_..."
Svar 200
{
  "hasNextPage": true,
  "hasPreviousPage": true,
  "items": [
    {
      "altText": "string",
      "assetType": "Image",
      "category": "MainImage",
      "contentType": "image/jpeg",
      "description": "string",
      "displayName": "Widget A",
      "fileName": "widget-a-front.jpg",
      "fileSize": 42,
      "height": 42,
      "id": "0f8b2c1e-4d3a-4b7e-9f10-2a6c5d8e1b44",
      "isPrimary": true,
      "languageCode": "STD",
      "sortOrder": 42,
      "thumbnailUrl": "https://cdn.fluit.cloud/assets/widget-a-front-thumb.jpg",
      "url": "https://cdn.fluit.cloud/assets/widget-a-front.jpg",
      "width": 42
    }
  ],
  "page": 1,
  "pageSize": 50,
  "totalCount": 137,
  "totalPages": 3
}

Bas-URL https://api.erp.fluit.cloud/preview. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

GET /items/{itemNumber}/assets/{assetId}/download

Download an item asset

Streams the asset file (image or document). Externally hosted assets return a 302 redirect to the external URL. Only assets marked as public can be downloaded.

items:read

Sökvägsparametrar

Fält Typ Beskrivning
itemNumber Krävs string Item number of the item the asset belongs to.
assetId Krävs string(uuid) Id of the asset, as returned by the asset list endpoint.

Svar

200 Tom body.
302 Tom body.
404 ProblemDetails No public asset with that id on that item — the same answer whether the item, the asset or only its public flag is missing.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable

Standardfel: 401 403 Felhantering

Exempel

curl
curl "https://api.erp.fluit.cloud/preview/items/{itemNumber}/assets/{assetId}/download" \
  -H "X-Api-Key: fluit_live_sk_..."
Svar 404
{
  "detail": "string",
  "instance": "string",
  "status": 42,
  "title": "string",
  "type": "string"
}

Bas-URL https://api.erp.fluit.cloud/preview. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

GET /items/{itemNumber}/availability

Get item stock availability

Returns the item's stock availability summed across all active warehouses and broken down per warehouse. availableQuantity is the quantity that can be promised to new orders (on hand minus reservations).

Visa hela beskrivningen

Items never stocked in a warehouse return an empty warehouses list with zero totals. The warehouse breakdown is bounded by the tenant's warehouse count and is not paginated.

items:read

Sökvägsparametrar

Fält Typ Beskrivning
itemNumber Krävs string Item number of the item to read availability for.

Svar

200 PublicItemAvailabilityResponse
Fält Typ Beskrivning
itemNumber string · nullable Item number of the item.
totalAllocatedQuantity decimal Total quantity reserved for orders across all warehouses. Serialised as a decimal string.
totalAvailableQuantity decimal Total quantity available for new orders (on hand − allocated). Serialised as a decimal string.
totalQuantityOnHand decimal Total physical quantity on hand across all warehouses. Serialised as a decimal string.
warehouses WarehouseAvailability[] · nullable Per-warehouse breakdown. Empty list if the item is not stocked in any warehouse.
404 ProblemDetails No item with that item number.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable

Standardfel: 401 403 Felhantering

Exempel

curl
curl "https://api.erp.fluit.cloud/preview/items/{itemNumber}/availability" \
  -H "X-Api-Key: fluit_live_sk_..."
Svar 200
{
  "itemNumber": "WIDGET-A",
  "totalAllocatedQuantity": "10",
  "totalAvailableQuantity": "10",
  "totalQuantityOnHand": "10",
  "warehouses": [
    {
      "allocatedQuantity": "10",
      "availableQuantity": "10",
      "quantityOnHand": "10",
      "replenishmentType": "Purchase",
      "requiresBatch": true,
      "requiresSerial": true,
      "trackingType": "None",
      "warehouseCode": "MAIN",
      "warehouseName": "Main warehouse"
    }
  ]
}

Bas-URL https://api.erp.fluit.cloud/preview. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

GET /items/{itemNumber}/price

Calculate item price

Calculates the price for an item via the price engine — the same price an order line would get. quantityBreaks lists the volume price tiers of the applied price list.

items:read

Sökvägsparametrar

Fält Typ Beskrivning
itemNumber Krävs string Item number of the item to price.

Frågeparametrar

Fält Typ Beskrivning
customerNumber string Prices for this customer, applying their price lists, agreements and campaigns. Omit for the default price.
currencyCode string ISO 4217 currency to price in. Defaults to the customer's currency, then the tenant base currency.
quantity decimal Quantity to price, which is what activates volume pricing. Must be greater than zero. Default 1.

Svar

200 PublicItemPriceResponse
Fält Typ Beskrivning
currencyCode string · nullable ISO 4217 currency code of the price.
customerNumber string · nullable Customer number the price was calculated for. Null for the default price.
found boolean Whether a price was found. If false, unitPrice is 0 and the item has no configured price.
itemName string · nullable Display name of the item.
itemNumber string · nullable Item number of the priced item.
priceListName string · nullable Name of the price list used. Null if no price list applied.
priceSource string · nullable Where the price came from, e.g. `Customer`, `Campaign`, `Standard`.
quantity decimal Quantity the price was calculated for. Serialised as a decimal string.
quantityBreaks QuantityBreak[] · nullable Volume price breaks from the applied price list. Empty if none.
unit string · nullable Unit of measure code the price applies to, e.g. `st`.
unitPrice decimal Calculated net unit price. Serialised as a decimal string.
400 ProblemDetails The quantity is zero or less, or no customer has that customer number.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable
404 ProblemDetails No item with that item number.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable

Standardfel: 401 403 Felhantering

Exempel

curl
curl "https://api.erp.fluit.cloud/preview/items/{itemNumber}/price" \
  -H "X-Api-Key: fluit_live_sk_..."
Svar 200
{
  "currencyCode": "SEK",
  "customerNumber": "CUST-001",
  "found": true,
  "itemName": "Widget A",
  "itemNumber": "WIDGET-A",
  "priceListName": "Retail 2026",
  "priceSource": "string",
  "quantity": "10",
  "quantityBreaks": [
    {
      "discountPercent": "12.50",
      "minQuantity": "10",
      "unitPrice": "299.00"
    }
  ],
  "unit": "st",
  "unitPrice": "299.00"
}

Bas-URL https://api.erp.fluit.cloud/preview. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

GET /items/{itemNumber}/variants

List an item's variants

Returns the variants belonging to a variant master, e.g. every colour and size of a T-shirt. The master itself declares which axes it varies on — read variantAxes on GET /preview/items/{itemNumber} — and each variant here reports its own values in variantAttributes.

Visa hela beskrivningen

Returns 404 only if the item number does not exist; an item that is not a variant master returns an empty page, so a catalogue sync can call this for every item without knowing in advance which ones have variants. The status filter is matched case-insensitively and an unknown value returns 400. Sorted by item number.

items:read Paginerad

Sökvägsparametrar

Fält Typ Beskrivning
itemNumber Krävs string Item number of the variant master whose variants to list.

Frågeparametrar

Fält Typ Beskrivning
status enum Filters on the variant's lifecycle status. Draft PendingApproval Active PhasingOut Discontinued Archived
page integer Page to return, 1-based. Default 1.
pageSize integer Number of records per page. Default 50, max 200.

Svar

200 PagedResult_PublicItemVariantResponse

Paginerat svar: raderna nedan ligger i items[], omgivna av totalCount, page, pageSize, totalPages, hasPreviousPage och hasNextPage. Paginerad

Fält Typ Beskrivning
barcode string · nullable EAN / GTIN barcode of the variant. Null if not set.
id string(uuid) Internal unique identifier (UUID v7).
isActive boolean Whether the variant is active. Inactive variants cannot be placed on new orders.
isSellable boolean Whether the variant can be sold.
itemNumber string · nullable Unique item number of the variant — use this on order lines.
links Links Hypermedia links for a public API resource. Exposed as a computed `links` property on the public response DTOs so that create and read responses carry the same self-reference — the canonical URL is derived from the business key already present on the DTO and can never drift from the route it points at.
name string · nullable Display name of the variant.
salesPrice decimal · nullable Default sales price in the tenant default currency. Serialised as a decimal string. Null if not set.
status enum Item status exposed via the Public API. Mirrors `Domain.Items.ItemStatus`. Draft PendingApproval Active PhasingOut Discontinued Archived
thumbnailUrl string · nullable URL to the variant's thumbnail image. Null if no public image is set.
variantAttributes ItemVariantAttribute[] · nullable The values that distinguish this variant, e.g. Colour=Red, Size=M. One entry per axis declared by the master in `variantAxes`.
400 ProblemDetails ?status= got a value outside its list.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable
404 ProblemDetails No item with that item number. An item that exists but is not a variant master returns an empty page instead.
Fält Typ
detail string · nullable
instance string · nullable
status integer · nullable
title string · nullable
type string · nullable

Standardfel: 401 403 Felhantering

Exempel

curl
curl "https://api.erp.fluit.cloud/preview/items/{itemNumber}/variants" \
  -H "X-Api-Key: fluit_live_sk_..."
Svar 200
{
  "hasNextPage": true,
  "hasPreviousPage": true,
  "items": [
    {
      "barcode": "string",
      "id": "0f8b2c1e-4d3a-4b7e-9f10-2a6c5d8e1b44",
      "isActive": true,
      "isSellable": true,
      "itemNumber": "WIDGET-A",
      "links": {
        "self": "string"
      },
      "name": "Widget A",
      "salesPrice": "299.00",
      "status": "Draft",
      "thumbnailUrl": "https://cdn.fluit.cloud/assets/widget-a-front-thumb.jpg",
      "variantAttributes": [
        {
          "name": "Widget A",
          "value": "string"
        }
      ]
    }
  ],
  "page": 1,
  "pageSize": 50,
  "totalCount": 137,
  "totalPages": 3
}

Bas-URL https://api.erp.fluit.cloud/preview. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

Scheman

Objekten som gruppens anrop refererar till. Fälttabellerna ovan går ett steg djupt och länkar hit i stället för att upprepa samma schema på varje endpoint.

ItemAttribute

PublicItemAttribute

A specification attribute value on an item.

Fält Typ Beskrivning
code string · nullable Stable attribute code, e.g. `MATERIAL`.
dataType enum Data type of a product attribute value. Mirrors `Domain.Items.AttributeDataType`. Determines how `attributes[].value` is formatted in responses and parsed in requests. Text WholeNumber DecimalNumber Boolean Date Url Html Color
name string · nullable Display name of the attribute, e.g. `Material`.
unit string · nullable Unit of the value, e.g. `mm`, `W`. Null if not applicable.
value string · nullable The attribute value formatted as a string (numbers use invariant format, dates ISO 8601, booleans `true`/`false`).

ItemCategoryAssignment

PublicItemCategoryAssignment

A category the item is assigned to.

Fält Typ Beskrivning
code string · nullable Stable category code, e.g. `TOOLS-HAND`.
isPrimary boolean Whether the category belongs to the primary category type (the main product hierarchy).
name string · nullable Display name of the category.

ItemCrossReference

PublicItemCrossReference

An alternative identifier for the item.

Fält Typ Beskrivning
isPrimary boolean Whether this is the preferred reference of its type.
referenceNumber string · nullable The reference number/value.
source string · nullable Source of the reference, e.g. a manufacturer or system name. Null if not set.
type enum Type of an alternative item identifier. Mirrors `Domain.Items.CrossReferenceType`. Manufacturer Oem IndustryStandard Superseded Competitor Barcode Custom

ItemUnit

PublicItemUnit

An orderable unit of measure for an item.

Fält Typ Beskrivning
barcode string · nullable EAN / GTIN barcode for this specific unit/pack. Null if not set.
conversionFactor decimal How many base units this unit represents (1 KART = 12 st ⇒ 12). Serialised as a decimal string.
isPurchaseUnit boolean Whether the unit may be used on purchase order lines.
isSalesUnit boolean Whether the unit may be used on sales order lines.
unitCode string · nullable Unit code — usable as `unit` on order lines, e.g. `st`, `KART`.

ItemVariantAttribute

PublicItemVariantAttribute

A variant attribute value, e.g. Colour=Red.

Fält Typ Beskrivning
name string · nullable Attribute name, e.g. `Colour`, `Size`.
value string · nullable The variant's value, e.g. `Red`, `M`.

ItemVariantAxis

PublicItemVariantAxis

An axis a variant master varies on, with the values available along it.

Fält Typ Beskrivning
name string · nullable Axis name, e.g. `Colour`, `Size`.
values string[] · nullable The values defined for this axis, e.g. `Red`, `Blue`.

QuantityBreak

PublicQuantityBreak

Volume price break — the unit price that applies from a minimum quantity.

Fält Typ Beskrivning
discountPercent decimal · nullable Discount in percent compared to the base price. Serialised as a decimal string. Null if not applicable.
minQuantity decimal Minimum quantity for this price. Serialised as a decimal string.
unitPrice decimal Unit price at this quantity. Serialised as a decimal string.

WarehouseAvailability

PublicWarehouseAvailability

Stock availability for an item in a single warehouse.

Fält Typ Beskrivning
allocatedQuantity decimal Quantity reserved for orders in this warehouse. Serialised as a decimal string.
availableQuantity decimal Quantity available for new orders (on hand − allocated). Serialised as a decimal string.
quantityOnHand decimal Physical quantity on hand in this warehouse. Serialised as a decimal string.
replenishmentType enum How an item is replenished. Mirrors `Domain.Items.ReplenishmentType`. Can be overridden per warehouse. Purchase Manufacture Transfer Assembly
requiresBatch boolean Whether movements in this warehouse must carry batch/lot numbers (`trackingType` is `Batch` or `BatchOut`).
requiresSerial boolean Whether movements in this warehouse must carry serial numbers (`trackingType` is `Serial` or `SerialOut`). A receipt or shipment without them is rejected.
trackingType enum How an item is tracked in a warehouse. Mirrors `Domain.Items.TrackingType`. Tracking is configured <b>per warehouse</b>, so this value is only meaningful in the context of one warehouse — the same item can be serial-tracked in one warehouse and untracked in another. None Serial SerialOut Batch BatchOut
warehouseCode string · nullable Warehouse code — usable as `warehouseCode` in order creation.
warehouseName string · nullable Display name of the warehouse.