export type JTLDataContractsKeysArtikelKey = string; export type JTLDataContractsKeysWarengruppeKey = string; export type JTLDataContractsKeysVersandklasseKey = string; export type JTLDataContractsKeysHerstellerKey = string; export type JTLDataContractsKeysKategorieKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemCategory = {categoryId?: JTLDataContractsKeysKategorieKey | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemCategories = {categories?: Array | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemIdentifiers = {sku?: string | undefined, amazonFnsku?: string | undefined, gtin?: string | undefined, manufacturerNumber?: string | undefined, isbn?: string | undefined, tariccode?: string | undefined, upc?: string | undefined, unNumber?: string | undefined, hazardNumber?: string | undefined, ownIdentifier?: string | undefined, defaultAsin?: string | undefined, jfsku?: string | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateDescriptionData = {itemName?: string | undefined, shortDescription?: string | undefined, description?: string | undefined, metaDescription?: string | undefined, metaKeywords?: string | undefined, titleTag?: string | undefined, urlPath?: string | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateDefaultDescription = {languageIso?: string | undefined, descriptionData?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateDescriptionData | undefined}; export type JTLWawiRestContractsModelsSalesChannelId = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateSalesChannelDescription = {salesChannelId?: JTLWawiRestContractsModelsSalesChannelId | undefined, languageIso?: string | undefined, descriptionData?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateDescriptionData | undefined}; export type JTLDataContractsKeysPlattformKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdatePlatformDescription = {platformId?: JTLDataContractsKeysPlattformKey | undefined, languageIso?: string | undefined, descriptionData?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateDescriptionData | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemDescriptions = {defaultDescriptions?: Array | undefined, salesChannelDescriptions?: Array | undefined, platformDescriptions?: Array | undefined}; export type JTLDataContractsKeysShopKey = string; export type JTLDataContractsKeysKundenGruppeKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemPrice = {fromQuantity?: number | undefined, netPrice?: number | undefined, reduceStandardPriceByPercent?: number | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemCustomerGroupPrices = {customerGroupId?: JTLDataContractsKeysKundenGruppeKey | undefined, prices?: Array | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemSaleschannelPrices = {saleschannelId?: JTLDataContractsKeysShopKey | undefined, customerGroupPrices?: Array | undefined, isActive?: boolean | undefined}; export type JTLDataContractsKeysKundeKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemCustomerPrices = {customerId?: JTLDataContractsKeysKundeKey | undefined, prices?: Array | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemPrices = {ignoreDiscounts?: boolean | undefined, salesPriceNet?: number | undefined, suggestedRetailPrice?: number | undefined, purchasePriceNet?: number | undefined, ebayPrice?: number | undefined, amazonPrice?: number | undefined, salesChannelPrices?: Array | undefined, customerPrices?: Array | undefined, defaultPrices?: Array | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemMeasurements = {height?: number | undefined, length?: number | undefined, shippingWeight?: number | undefined, weight?: number | undefined, width?: number | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemImage = {blobIdentifier?: string | undefined, sortNumber?: number | undefined, isMainImage?: boolean | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdatePlatformImages = {platformId?: JTLDataContractsKeysPlattformKey | undefined, images?: Array | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateSaleschannelImages = {saleschannelId?: JTLWawiRestContractsModelsSalesChannelId | undefined, images?: Array | undefined}; export type JTLDataContractsKeysEbayUserKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateEbayImages = {ebayAccountId?: JTLDataContractsKeysEbayUserKey | undefined, images?: Array | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemImages = {defaultImages?: Array | undefined, platformImages?: Array | undefined, saleschannelImages?: Array | undefined, ebayImages?: Array | undefined}; export type JTLDataContractsKeysEigenesFeldKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemCustomFieldValue = {fieldId?: JTLDataContractsKeysEigenesFeldKey | undefined, value?: string | undefined, valueCultureName?: string | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemCustomFields = {fieldValues?: Array | undefined}; export type JTLDataContractsKeysLieferantKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateSupplierPrice = {fromQuantity?: number | undefined, netPrice?: number | undefined, usePercentageDiscount?: boolean | undefined, percentageDiscount?: number | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemSupplier = {supplierId?: JTLDataContractsKeysLieferantKey | undefined, supplierItemName?: string | undefined, supplierItemNumber?: string | undefined, stockLevel?: number | undefined, netPurchasePrice?: number | undefined, minimumPurchaseQuantity?: number | undefined, deliveryTimeInDays?: number | undefined, isDropshippingActive?: boolean | undefined, packageUnitDescription?: string | undefined, packageUnitQuantity?: number | undefined, notes?: string | undefined, vatRate?: number | undefined, useSupplierDeliveryTime?: boolean | undefined, includeSupplierStock?: boolean | undefined, purchaseInterval?: number | undefined, scalePrices?: Array | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemSuppliers = {defaultSupplier?: JTLDataContractsKeysLieferantKey | undefined, defaultDropshippingSupplier?: JTLDataContractsKeysLieferantKey | undefined, suppliers?: Array | undefined}; export type JTLDataContractsKeysVariationKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateDescription = {languageIso?: string | undefined, name?: string | undefined}; export type JTLDataContractsKeysVariationWertKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateCustomerGroupSurcharge = {customerGroupId?: JTLDataContractsKeysKundenGruppeKey | undefined, surcharge?: number | undefined, isActive?: boolean | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateSalesChannelSurcharge = {salesChannelId?: JTLWawiRestContractsModelsSalesChannelId | undefined, surcharges?: Array | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateVariationValueSurcharges = {defaultSurchargeNet?: number | undefined, customerGroupSurcharges?: Array | undefined, salesChannelSurcharges?: Array | undefined}; export type JTLDataContractsKeysBildKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateVariationValue = {variationValueId?: JTLDataContractsKeysVariationWertKey | undefined, itemNumber?: string | undefined, gTIN?: string | undefined, weightOffset?: number | undefined, descriptions?: Array | undefined, surcharges?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateVariationValueSurcharges | undefined, position?: number | undefined, image?: JTLDataContractsKeysBildKey | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsVariationType = 0 | 1 | 2 | 3 | 4 | 5 | 6; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateVariation = {variationId?: JTLDataContractsKeysVariationKey | undefined, position?: number | undefined, descriptions?: Array | undefined, values?: Array | undefined, variationType?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsVariationType | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemVariations = {variations?: Array | undefined}; export type JTLDataContractsKeysLieferstatusKey = string; export type JTLDataContractsKeysMerkmalWertKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemFeature = {featureId?: JTLDataContractsKeysMerkmalWertKey | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemFeatures = {features?: Array | undefined}; export type JTLDataContractsKeysAttributKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateAttributeValue = {languageIso?: string | undefined, value?: string | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateAttributeSalesChannelValues = {salesChannelId?: JTLWawiRestContractsModelsSalesChannelId | undefined, values?: Array | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateAttributeValues = {attributeId?: JTLDataContractsKeysAttributKey | undefined, defaultValues?: Array | undefined, salesChannelValues?: Array | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemAttributes = {values?: Array | undefined}; export type JTLDataContractsKeysEinheitKey = string; export type JTLDataContractsKeysMassEinheitKey = string; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemUnitPricing = {salesUnitId?: JTLDataContractsKeysEinheitKey | undefined, packagingUnitId?: JTLDataContractsKeysEinheitKey | undefined, innerQuantity?: number | undefined, innerQuantityUnitId?: JTLDataContractsKeysMassEinheitKey | undefined, isBasePriceDeclared?: boolean | undefined, basePriceReferenceUnitId?: JTLDataContractsKeysMassEinheitKey | undefined, basePriceReferenceAmount?: number | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemCustomerGroupSpecialPrice = {customerGroupId?: JTLDataContractsKeysKundenGruppeKey | undefined, netPrice?: number | undefined, isActive?: boolean | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemSalesChannelSpecialPrices = {salesChannelId?: JTLWawiRestContractsModelsSalesChannelId | undefined, specialPrices?: Array | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemSpecialPrices = {isActive?: boolean | undefined, startDate?: string | undefined, endDate?: string | undefined, isEndDateActive?: boolean | undefined, minimumStockQuantity?: number | undefined, isStockRestrictionActive?: boolean | undefined, salesChannelSpecialPrices?: Array | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateNegativeStockPlatform = {platformId?: JTLDataContractsKeysPlattformKey | undefined, isNegativeStockAllowed?: boolean | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateNegativeStockSalesChannel = {salesChannelId?: JTLWawiRestContractsModelsSalesChannelId | undefined, isNegativeStockAllowed?: boolean | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsSerialNumberType = 0 | 1 | 2; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemStorageConstraints = {allowNegativeStock?: boolean | undefined, itemPlatformNegativeStocks?: Array | undefined, itemSalesChannelNegativeStocks?: Array | undefined, buffer?: number | undefined, globalMinimumStockLevel?: number | undefined, hasBatch?: boolean | undefined, isInventoryManagementActive?: boolean | undefined, isBestBeforeManaged?: boolean | undefined, isStockDivisible?: boolean | undefined, serialNumberType?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsSerialNumberType | undefined}; export type JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsChangeItemCommandRequest = {itemId?: JTLDataContractsKeysArtikelKey | undefined, productGroupId?: JTLDataContractsKeysWarengruppeKey | undefined, shippingClassId?: JTLDataContractsKeysVersandklasseKey | undefined, manufacturerId?: JTLDataContractsKeysHerstellerKey | undefined, categories?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemCategories | undefined, identifiers?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemIdentifiers | undefined, descriptions?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemDescriptions | undefined, prices?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemPrices | undefined, measurements?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemMeasurements | undefined, images?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemImages | undefined, customFields?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemCustomFields | undefined, suppliers?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemSuppliers | undefined, variations?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemVariations | undefined, deliveryStatusId?: JTLDataContractsKeysLieferstatusKey | undefined, includeInPriceList?: boolean | undefined, ignoreOrderSuggestions?: boolean | undefined, ignoreDiscounts?: boolean | undefined, countryOfOrigin?: string | undefined, notes?: string | undefined, features?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemFeatures | undefined, attributes?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemAttributes | undefined, unitPricing?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemUnitPricing | undefined, specialPrices?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemSpecialPrices | undefined, storageConstraints?: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsUpdateItemStorageConstraints | undefined}; export type PatchApiV2ItemdetailsChangeArgs = {'x-tenant-id': string, 'x-runas'?: string | undefined, 'x-companyid'?: string | undefined, body: JTLWawiItemPublicApiDataTransferObjectsV2ItemdetailsChangeItemCommandRequest}; export type PatchApiV2ItemdetailsChangeOptions = {baseUrl?: string | undefined, oauth2AuthorizationCode?: string | undefined, fetch?: typeof fetch | undefined}; /** * Modifies an existing regular item with all specified properties. This command enables complete reconfiguration of an item including identifiers, descriptions, prices, measurements, and miscellaneous information. * * PATCH /v2/itemdetails/change * * Also accepts auth: oauth2-client-credentials */ export const patchApiV2ItemdetailsChange = async (args: PatchApiV2ItemdetailsChangeArgs, options?: PatchApiV2ItemdetailsChangeOptions) => { const {baseUrl = "https://scx-sbx.api.jtl-software.com", fetch: fetchFn = fetch, oauth2AuthorizationCode} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") headers.set('accept', "application/json") if (args['x-tenant-id'] != null) headers.set("x-tenant-id", String(args['x-tenant-id'])) if (args['x-runas'] != null) headers.set("x-runas", String(args['x-runas'])) if (args['x-companyid'] != null) headers.set("x-companyid", String(args['x-companyid'])) if (oauth2AuthorizationCode !== undefined) headers.set('authorization', `Bearer ${oauth2AuthorizationCode}`) const url = `${baseUrl.replace(/\/+$/, '')}/v2/itemdetails/change${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "PATCH", headers, body: JSON.stringify(args.body)}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return (await res.json()) as unknown };