ItemPrices

Changes to Download every item's <b>base</b> price as an xlsx — the catalogue-wide base sheet, and the round-trip template for M:IO.CommonAPI.Controllers.v1.Catalog.ItemPricesController.BulkUpsertBasePrices(IO.Domain.Shared.Enums.PriceType,System.Collections.Generic.List{IO.Catalog.Contracts.DTO.Pricelists.BasePriceSheetRow},System.Threading.CancellationToken). Columns are <c>itemCode, price, quantity, fromDate, endDate</c>; the price type comes from `type` and every emitted row is a `relation=Item, relationId=0` row. <br><b>Tenant-primary only</b>, matching the import rather than the two sibling exports. This sheet exists to be edited and posted back, so a caller who could fetch it but not import it would hold a file they cannot use. R1 still applies underneath: a purchase sheet omits rows on items the caller does not own — though for a tenant-primary caller that is every item.<br>Answers `204` when nothing is exportable, `202` with a job id above IO.Admin.BulkExportOptions.SyncRowThreshold, and takes no row filter — the base sheet pins no axis, so it offers none (see IO.Catalog.Contracts.DTO.Pricelists.BasePricesExportRequest).

get/v1/Items/prices/base/download/xlsx