Zum Erstellen und Aktualisieren von Produkten.
Bigcommerce:-
BigCommerce ist eine E-Commerce-Plattform, mit der Unternehmen Online-Shops erstellen und verwalten können. Es bietet Tools für die Erstellung und Anpassung einer Website, die Verwaltung des Bestands, die Verarbeitung von Zahlungen und den Versand von Bestellungen. BigCommerce bietet auch Integrationen mit verschiedenen Tools von Drittanbietern, wie z. B. Buchhaltungssoftware und Marketing-Tools, um Unternehmen bei der effizienten Verwaltung ihres Online-Shops zu unterstützen.
Google Sheets:-
Google Sheets ist eine webbasierte Tabellenkalkulationsanwendung, die von Google entwickelt wurde. Sie ermöglicht es Nutzern, Tabellenkalkulationen online zu erstellen und zu bearbeiten und dabei in Echtzeit mit anderen Nutzern zusammenzuarbeiten. Es hat ähnliche Funktionen wie Microsoft Excel und kann für Aufgaben wie die Organisation von Daten, die Durchführung von Berechnungen und die Erstellung von Diagrammen und Grafiken verwendet werden. Sheets enthält auch integrierte Funktionen für die Arbeit mit Daten, wie z. B. Sortieren und Filtern, und kann mit anderen Google-Diensten wie Google Forms, Google Maps und Google Translate integriert werden. Es ist auch möglich, Google Sheets mit Hilfe von Google Script als grundlegende Datenbank zu verwenden.
Zapier:-
Zapier ist ein Tool, das Ihnen hilft, sich wiederholende Aufgaben zwischen zwei oder mehr Anwendungen zu automatisieren – es ist kein Code erforderlich, aber für komplexe Integrationen können wir Kodierung verwenden. Zapier kann eine zusätzliche App anweisen, eine bestimmte Aktion auszuführen (oder auszuführen), wenn ein Ereignis in der ersten App eintritt.
Um BigCommerce mit Google Sheets über Zapier zu integrieren, müssen Sie zunächst ein Konto bei BigCommerce und Zapier erstellen.
Once you have an account with both, you can then create a „Zap“ (automation) between the two platforms.
Im Folgenden werden die allgemeinen Schritte zur Einrichtung der Integration beschrieben:
Schritt 1: Melden Sie sich bei Ihrem Zapier-Konto an und klicken Sie auf die Schaltfläche „Make a Zap“.
Schritt 2: Wählen Sie Google Sheets als auslösende Anwendung und wählen Sie das Aktionsereignis, das Sie verwenden möchten (z. B. „Tabellenkalkulationszeile erstellen“).
Verbinden Sie Ihr Google Sheets-Konto mit Zapier, indem Sie Ihre Kontoanmeldedaten angeben
Schritt 3: Richten Sie die Vorlage für die Übermittlung der Daten zwischen BigCommerce und Google Sheets ein, passen Sie die Felder nach Bedarf an und testen Sie die Aktion, um sicherzustellen, dass sie korrekt funktioniert oder nicht.
Schritt 4: Fügen Sie nach dem Testen ein Filterwerkzeug hinzu, um die Daten zu filtern und sicherzustellen, dass der nächste Schritt der Erstellung von Produkten oder der Aktualisierung bestehender Produkte dient. (Sie können die Datumsspalte der Produkt-ID validieren, wenn die ID vorhanden ist, die zum Aktualisierungsprozess führt, oder wenn die ID nicht vorhanden ist, dann zum neuen Erstellungsprozess).
Filter-Tool: – Erlauben Sie einem Zap nur dann zu senden, wenn eine bestimmte Bedingung erfüllt ist. Sie können einen Filter verwenden, um eine Textnachricht nur dann zu senden, wenn eine E-Mail von einer bestimmten Adresse empfangen wird, z. B. wenn Sie eine Textnachricht senden möchten, sobald Sie eine neue E-Mail erhalten.
Zum Hinzufügen neuer Produkte (wenn die ID nicht vorhanden ist): –
Schritt 5: Wählen Sie das Codewerkzeug für den Aktionsprozess sowie die Sprache (Javascript) und ordnen Sie die Daten der Blattspalten mithilfe von Überschriften zu.
Und wenden Sie die Bedingung entsprechend der Anforderung an
Code zur Validierung der Daten:-
// shipping default= no var mod = inputData.shipping var shipping if(mod == null || mod == „No“){ shipping=0 } if(mod==“Yes“){ shipping=1 } //product Visiblity default=no var Visible= inputData.Visible var modVisible if(Visible== null || Visible== „No“){ modVisible =0 } if(Visible==“Yes“){ modVisible =1 } //depth(thickness default=1) var modDepth = inputData.Depth var depth if(modDepth == null || modDepth == „1“){ depth=1 } else{ depth=modDepth } //availability (default=available) var modavailability = inputData.availabilityData var availability var preOrderDate var preorderOnly if(modavailability == „No“){ availability=“disabled“ preOrderDate=“NoData“ preorderOnly=“NoData“ } else if(modavailability==“Yes“){ availability=“available“ preOrderDate=“NoData“ preorderOnly=“NoData“ } else if(modavailability == null || modavailability==““){ availability=“NoData“ preOrderDate=“NoData“ preorderOnly=“NoData“ } else{ availability=“preorder“ preOrderDate=modavailability preorderOnly=“True“ } //taxclass(Default Tax Class = P) var modtaxclass = inputData.Type var taxClass if(modtaxclass == „D“){ taxClass=10 } if(modtaxclass == „P“){ taxClass=0 } //customFields var modCustomField = inputData.customfields var customFieldData if(modCustomField == null || modCustomField == „“){ customFieldData=1 } else{ customFieldData=modCustomField } // SKU validate var checkSKU=inputData.sku var finalSKU if(checkSKU==““ || checkSKU==null){ finalSKU =“NoData“ }else{ finalSKU=checkSKU } // Description validate var checkDescription=inputData.description var finalDescription if(checkDescription==““ || checkDescription==null){ finalDescription=“NoData“ }else{ finalDescription=checkDescription } // bin_picking_number validate var checkBin_picking_number=inputData.bin_picking_number var finalBin_picking_number if(checkBin_picking_number==““ || checkBin_picking_number==null){ finalBin_picking_number=“NoData“ }else{ finalBin_picking_number=checkBin_picking_number } // brand_name validate var checkBrand_name=inputData.brand_name var finalBrand_name if(checkBrand_name==““ || checkBrand_name==null){ finalBrand_name=“NoData“ }else{ finalBrand_name=checkBrand_name } //inventory_tracking validate var checkInventory_tracking=inputData.inventory_tracking var finalInventory_tracking if(checkInventory_tracking==““ || checkInventory_tracking==null){ finalInventory_tracking=“NoData“ }else{ finalInventory_tracking=checkInventory_tracking } //current_stock validate var checkCurrent_stock=inputData.current_stock var finalCurrent_stock if(checkCurrent_stock==““ || checkCurrent_stock==null){ finalCurrent_stock=100000000000 }else{ finalCurrent_stock=checkCurrent_stock } //low_stock validate var checkLow_stock=inputData.low_stock var finalLow_stock if(checkLow_stock==““ || checkLow_stock==null){ finalLow_stock=100000000000 }else{ finalLow_stock=checkLow_stock } //width validate var checkWidth=inputData.width var finalWidth if(checkWidth==““ || checkWidth==null){ finalWidth=100000000000 }else{ finalWidth=checkWidth } //heightvalidate var checkHeight=inputData.height var finalHeight if(checkHeight==““ || checkHeight==null){ finalHeight=100000000000 }else{ finalHeight=checkHeight } //search_keywords validate var checkSearch_keywords=inputData.search_keywords var finalSearch_keywords if(checkSearch_keywords==““ || checkSearch_keywords==null){ finalSearch_keywords =“NoData“ }else{ finalSearch_keywords =checkSearch_keywords } //meta_keywordsvalidate var checkMeta_keywords=inputData.meta_keywords var finalMeta_keywords if(checkMeta_keywords==““ || checkMeta_keywords==null){ finalMeta_keywords=“NoData“ }else{ finalMeta_keywords=checkMeta_keywords } //meta_description svalidate var checkMeta_description=inputData.meta_description var finalMeta_description if(checkMeta_description==““ || checkMeta_description==null){ finalMeta_description=“NoData“ }else{ finalMeta_description=checkMeta_description } //SortOrder validate var checkSortOrder=inputData.SortOrder var finalSortOrder if(checkSortOrder==““ || checkSortOrder==null){ finalSortOrder=100000000000 }else{ finalSortOrder=checkSortOrder } /* //existingCat validate var checkExistingCat=inputData.existingCat var finalExistingCat if(checkExistingCat==““ || checkExistingCat==null){ finalExistingCat=“NoData“ }else{ finalExistingCat=checkExistingCat } //unassignCat validate var checkUnassignCat=inputData.unassignCat var finalUnassignCat if(checkUnassignCat==““ || checkUnassignCat==null){ finalUnassignCat=“NoData“ }else{ finalUnassignCat=checkUnassignCat } */ //assignCat validate var checkAssignCat=inputData.assignCat var finalAssignCat if(checkAssignCat==““ || checkAssignCat==null){ finalAssignCat=“NoData“ }else{ finalAssignCat=checkAssignCat } //upc validate var checkUpc=inputData.upc var finalUpc if(checkUpc==““ || checkUpc==null){ finalUpc=“NoData“ }else{ finalUpc=checkUpc } output = {shipping, modVisible, depth, availability, preOrderDate, preorderOnly, taxClass, customFieldData, finalSKU, finalDescription, finalBin_picking_number, finalBrand_name, finalInventory_tracking, finalCurrent_stock, finalLow_stock, finalWidth, finalHeight, finalSearch_keywords, finalMeta_keywords, finalMeta_description, finalSortOrder, finalAssignCat, finalUpc} |
Schritt 6: Wählen Sie anschließend ein weiteres Code-Tool für die neue Aktion aus und wählen Sie die Sprache Python, um die Anforderungsaktion zum Posten des Produkts durchzuführen sowie alle Daten (die aus dem Javascript-Abschnitt stammen) mithilfe von Headern zuzuordnen.
Code zur Verwendung der Abfragemethode:-
| import requests import json url = „https://api.bigcommerce.com/stores/StoreHash/v3/catalog/products“ Name=str(input_data[‚Name‘]) sku=str(input_data[’sku‘]) description=str(input_data[‚description‘]) weight=float(input_data[‚weight‘]) depth=float(input_data[‚depth‘]) width=float(input_data[‚width‘]) height=float(input_data[‚height‘]) price=float(input_data[‚price‘]) bin_picking_number=str(input_data[‚bin_picking_number‘]) brand_name=str(input_data[‚brand_name‘]) inventory_level=int(input_data[‚current_stock‘]) inventory_warning_level=int(input_data[‚low_stock‘]) availability=str(input_data[‚availability‘]) preOrderDate=str(input_data[‚preorder_release_date‘]) #check preorder Boollen preorderOnly=str(input_data[‚is_preorder_only‘]) if preorderOnly == „True“: resPreOrderOnly=True else: resPreOrderOnly=None search_keywords=str(input_data[’search_keywords‘]) meta_description=str(input_data[‚meta_description‘]) sortOrder = int(input_data[‚SortOrder‘]) upc=str(input_data[‚upc‘]) taxClass=int(input_data[‚taxClass‘]) #check shipping shipping=int(input_data[’shipping‘]) if shipping==0: mod=False if shipping==1: mod=True #check product is_visible productVisible=int(input_data[‚productVisible‘]) if productVisible==0: productVisibleMod=False if productVisible==1: productVisibleMod=True #check product Type productType=str(input_data[‚Type‘]) if productType==“P“: type=“physical“ if productType==“D“: type=“digital“ #check inventory tracking inventoy=str(input_data[‚inventory_tracking‘]) if inventoy==“No“: inventoryData=“none“ elif inventoy==“Yes“: inventoryData=“product“ else: inventoryData=inventoy # meta_keywords converting string to array[string] meta_keywords = str(input_data[‚meta_keywords‘]) if meta_keywords != ‚NoData‘: metaWords = meta_keywords.split(‚,‘) else: metaWords=[] #———-category———– def remove_matching_values(arr1): #set holds non duplicate values set1 = set(arr1) return list(set1) #fetching data from sheet to add category to product addData = str(input_data[‚assign‘]) # Split the string into a list of elements addDataArr = addData.split(‚,‘) arr1 = [] for x in addDataArr: if x.isdigit(): arr1.append(int(x)) # passing parameter result = remove_matching_values(arr1) #———-customfields——- rawCustomData = str(input_data[‚customFields‘]) if rawCustomData!=“1″: data_list = rawCustomData.split(‚,‘) rawResult = [] for item in data_list: name, value = item.split(‚:‘) rawResult.append({’name‘: name, ‚value‘: value}) customData=list(rawResult) else: rawResult = [] customData=list(rawResult) #PAYLOAD rawPayload ={ „name“: (f'{Name}‘), „type“: (f'{type}‘), „sku“: (f'{sku}‘), „description“: (f'{description}‘), „weight“: weight, „width“: width, „depth“: depth, „height“: height, „price“: price, „bin_picking_number“: (f'{bin_picking_number}‘), „brand_name“: (f'{brand_name}‘), „inventory_level“: inventory_level, „inventory_warning_level“: inventory_warning_level, „inventory_tracking“: (f'{inventoryData}‘), „is_free_shipping“: mod, „is_visible“: productVisibleMod, „availability“: (f'{availability}‘), „preorder_release_date“:(f'{preOrderDate}‘), „is_preorder_only“:resPreOrderOnly, „search_keywords“: (f'{search_keywords}‘), „meta_keywords“: metaWords, „meta_description“: (f'{meta_description}‘), „sort_order“: sortOrder, „categories“: result, „tax_class_id“: taxClass, „upc“:(f'{upc}‘), „custom_fields“:customData } filtered_payload = {k: v for k, v in rawPayload.items() if v not in (None, „NoData“,[], 100000000000, „“)} payload=json.dumps(filtered_payload) headers = { ‚X-Auth-Token‘: ‚X Auth token‘, # add your AuthToken between ‘’ ‚Content-Type‘: ‚application/json‘, ‚Accept‘: ‚application/json‘ } response1 = requests.request(„POST“, url, headers=headers, data=payload) |
Wichtige Dinge
filtered_payload = {k: v for k, v in rawPayload.items() if v not in (None, „NoData“,[], 100000000000, „“)}
Durch die Verwendung dieser filtered_payload werden ungültige Daten herausgefiltert und ihre Felder aus der Nutzlast entfernt.
URL:- Geben Sie die URL Ihres Shops ein
X-Auth-Token:- Geben Sie Ihren X-Auth-Token ein
Hinweis:- Bei der Eingabe der Daten bitte diese Art von Eingaben nicht verwenden
None, „NoData“,[], 100000000000, „“
Diese Art von Eingaben führt zu einem Fehler.
Zum Aktualisieren der Produkte (falls vorhanden): –
Schritt 5: Wählen Sie das Webhook-Tool, um die Informationen über das vorhandene Produkt zu erhalten, und geben Sie die Id in der Abfrage ein, und füllen Sie alle Anforderungen wie URL und Header aus.
Und auch Ereignis als GET auswählen
Webhooks-Tool:- Webhooks werden meist zur Vereinfachung der Kommunikation zwischen zwei Anwendungen verwendet, können aber auch zur Automatisierung von Infrastructure-as-code (IaC)-Workflows und für GitOps-Praktiken genutzt werden.
Schritt 6: Wählen Sie das Code-Tool und die JavaScript-Sprache, um die Daten zu validieren und die Spalten des Blattes mit Überschriften zu versehen.
Code zur Validierung der Daten:-
| // Name validate var checkName=inputData.Name var finalName if(checkName==““ || checkName==null){ finalName=“NoData“ }else{ finalName=checkName } //weight validate var checkWeight=inputData.Weight var finalWeight if(checkWeight==““ || checkWeight==null){ finalWeight=-100000000000 }else{ finalWeight=checkWeight } //Price validate var checkPrice=inputData.Price var finalPrice if(checkPrice==““ || checkPrice==null){ finalPrice=-100000000000 }else{ finalPrice=checkPrice } //taxclass(Default Tax Class = P) var modtaxclass = inputData.Type var taxClass var finalType if(modtaxclass == „D“){ taxClass=10 finalType=“D“ } else if(modtaxclass == „P“){ taxClass=0 finalType=“P“ } else{ taxClass=100000000000 finalType=“NoData“ } // shipping default= no var mod = inputData.shipping var shipping if(mod == „No“){ shipping=0 } else if(mod==“Yes“){ shipping=1 } else{ shipping=“NoData“ } //product Visiblity default=no var modVisible = inputData.Visible var Visible if(modVisible == „No“){ Visible=0 } else if(mod==“Yes“){ Visible=1 } else{ Visible=“NoDate“ } //depth(thickness default=1) var modDepth = inputData.Depth var depth if(modDepth == null){ depth=100000000000 } else{ depth=modDepth } //availability (default=available) var modavailability = inputData.availabilityData var availability var preOrderDate var preorderOnly if(modavailability == „No“){ availability=“disabled“ preOrderDate=“NoData“ preorderOnly=“NoData“ } else if(modavailability==“Yes“){ availability=“available“ preOrderDate=“NoData“ preorderOnly=“NoData“ } else if(modavailability == null || modavailability==““){ availability=“NoData“ preOrderDate=“NoData“ preorderOnly=“NoData“ } else{ availability=“preorder“ preOrderDate=modavailability preorderOnly=“True“ } //customFields var modCustomField = inputData.customfields var customFieldData if(modCustomField == null || modCustomField == „“){ customFieldData=1 } else{ customFieldData=modCustomField } // SKU validate var checkSKU=inputData.sku var finalSKU if(checkSKU==““ || checkSKU==null){ finalSKU =“NoData“ }else{ finalSKU=checkSKU } // Description validate var checkDescription=inputData.description var finalDescription if(checkDescription==““ || checkDescription==null){ finalDescription=“NoData“ }else{ finalDescription=checkDescription } // bin_picking_number validate var checkBin_picking_number=inputData.bin_picking_number var finalBin_picking_number if(checkBin_picking_number==““ || checkBin_picking_number==null){ finalBin_picking_number=“NoData“ }else{ finalBin_picking_number=checkBin_picking_number } // bin_picking_number validate var checkBrand_name=inputData.brand_name var finalBrand_name if(checkBrand_name==““ || checkBrand_name==null){ finalBrand_name=“NoData“ }else{ finalBrand_name=checkBrand_name } //inventory_tracking validate var checkInventory_tracking=inputData.inventory_tracking var finalInventory_tracking if(checkInventory_tracking==““ || checkInventory_tracking==null){ finalInventory_tracking=“NoData“ }else{ finalInventory_tracking=checkInventory_tracking } //current_stock validate var checkCurrent_stock=inputData.current_stock var finalCurrent_stock if(checkCurrent_stock==““ || checkCurrent_stock==null){ finalCurrent_stock=100000000000 }else{ finalCurrent_stock=checkCurrent_stock } //low_stock validate var checkLow_stock=inputData.low_stock var finalLow_stock if(checkLow_stock==““ || checkLow_stock==null){ finalLow_stock=100000000000 }else{ finalLow_stock=checkLow_stock } //width validate var checkWidth=inputData.width var finalWidth if(checkWidth==““ || checkWidth==null){ finalWidth=100000000000 }else{ finalWidth=checkWidth } //heightvalidate var checkHeight=inputData.height var finalHeight if(checkHeight==““ || checkHeight==null){ finalHeight=100000000000 }else{ finalHeight=checkHeight } //search_keywords validate var checkSearch_keywords=inputData.search_keywords var finalSearch_keywords if(checkSearch_keywords==““ || checkSearch_keywords==null){ finalSearch_keywords =“NoData“ }else{ finalSearch_keywords =checkSearch_keywords } //meta_keywordsvalidate var checkMeta_keywords=inputData.meta_keywords var finalMeta_keywords if(checkMeta_keywords==““ || checkMeta_keywords==null){ finalMeta_keywords=“NoData“ }else{ finalMeta_keywords=checkMeta_keywords } //meta_description svalidate var checkMeta_description=inputData.meta_description var finalMeta_description if(checkMeta_description==““ || checkMeta_description==null){ finalMeta_description=“NoData“ }else{ finalMeta_description=checkMeta_description } //SortOrder validate var checkSortOrder=inputData.SortOrder var finalSortOrder if(checkSortOrder==““ || checkSortOrder==null){ finalSortOrder=100000000000 }else{ finalSortOrder=checkSortOrder } //existingCat validate var checkExistingCat=inputData.existingCat var finalExistingCat if(checkExistingCat==““ || checkExistingCat==null){ finalExistingCat=“NoData“ }else{ finalExistingCat=checkExistingCat } //unassignCat validate var checkUnassignCat=inputData.unassignCat var finalUnassignCat if(checkUnassignCat==““ || checkUnassignCat==null){ finalUnassignCat=“NoData“ }else{ finalUnassignCat=checkUnassignCat } //assignCat validate var checkAssignCat=inputData.assignCat var finalAssignCat if(checkAssignCat==““ || checkAssignCat==null){ finalAssignCat=“NoData“ }else{ finalAssignCat=checkAssignCat } //upc validate var checkUpc=inputData.upc var finalUpc if(checkUpc==““ || checkUpc==null){ finalUpc=“NoData“ }else{ finalUpc=checkUpc } output = {finalName, finalType, finalWeight, finalPrice, shipping, Visible, depth, availability, preOrderDate, preorderOnly, taxClass, customFieldData, finalSKU, finalDescription, finalBin_picking_number, finalBrand_name, finalInventory_tracking, finalCurrent_stock, finalLow_stock, finalWidth, finalHeight, finalSearch_keywords, finalMeta_keywords, finalMeta_description, finalSortOrder, finalExistingCat, finalUnassignCat, finalAssignCat, finalUpc} |
Nachdem wir den Validierungstest für diese Aktion erstellt haben, sind wir nun bereit für den letzten Schritt
Schritt 7: Der letzte Schritt ist die Auswahl eines weiteren Kodierungswerkzeugs, um die Anfragemethode zur Aktualisierung der vorhandenen Produkte mit Python auszuführen.
Codes für die Bearbeitung des Antrags auf Aktualisierung des Produkts:
| import requests import json url = „https://api.bigcommerce.com/stores/storehash/v3/catalog/products“ Id=int(input_data[‚Id‘]) Name=str(input_data[‚Name‘]) sku=str(input_data[’sku‘]) description=str(input_data[‚description‘]) weight=float(input_data[‚weight‘]) depth=float(input_data[‚depth‘]) width=float(input_data[‚width‘]) height=float(input_data[‚height‘]) price=float(input_data[‚price‘]) bin_picking_number=str(input_data[‚bin_picking_number‘]) brand_name=str(input_data[‚brand_name‘]) inventory_level=int(input_data[‚current_stock‘]) inventory_warning_level=int(input_data[‚low_stock‘]) availability=str(input_data[‚availability‘]) preOrderDate=str(input_data[‚preorder_release_date‘]) #check pre order preorderOnly=str(input_data[‚is_preorder_only‘]) if preorderOnly == „True“: resPreOrderOnly=True else: resPreOrderOnly=None search_keywords=str(input_data[’search_keywords‘]) meta_description=str(input_data[‚meta_description‘]) sortOrder = int(input_data[‚SortOrder‘]) upc=str(input_data[‚upc‘]) taxClass=int(input_data[‚taxClass‘]) #check shipping shipping=str(input_data[’shipping‘]) if shipping==’0′: mod=False elif shipping==’1′: mod=True else: mod=None #check product is_visible productVisible=str(input_data[‚productVisible‘]) if productVisible==’0′: productVisibleMod=False elif productVisible==’1′: productVisibleMod=True else: productVisibleMod=None #check product Type productType=str(input_data[‚Type‘]) if productType==“P“: type=“physical“ elif productType==“D“: type=“digital“ else: type=productType #check inventory Data inventoy=str(input_data[‚inventory_tracking‘]) if inventoy==“No“: inventoryData=“none“ elif inventoy==“Yes“: inventoryData=“product“ else: inventoryData=inventoy # meta_keywords converting string to array[string] meta_keywords = str(input_data[‚meta_keywords‘]) if meta_keywords != ‚NoData‘: metaWords = meta_keywords.split(‚,‘) else: metaWords=[] #———-category———– def remove_matching_values(arr1, arr2, arr3): #set holds non duplicate values set1 = set(arr1) set2 = set(arr2) set3 = set(arr3) #removing matching data diff = set1.symmetric_difference(set2) list1 = list(diff) list2 = list(set3) #combining data combined = set(list1 + list2) return list(combined) #fetching data from BigCom fetchedData = str(input_data[‚Assignedcategories‘]) #fetching data from sheet to remove from category from product Remove = str(input_data[‚unassign‘]) #fetching data from sheet to add category to product addData = str(input_data[‚assign‘]) if fetchedData !=’NoData‘: fetchedDataArr = fetchedData.split(‚,‘) # arr1 = fetchedDataArr arr1 = [] for x in fetchedDataArr: if x.isdigit(): arr1.append(int(x)) else: arr1 = [] # Split the string into a list of elements if Remove !=’NoData‘: removeDataArr = Remove.split(‚,‘) # arr1 = fetchedDataArr arr2 = [] for x in removeDataArr: if x.isdigit(): arr2.append(int(x)) else: arr2 = [] if addData !=’NoData‘: addDataArr = addData.split(‚,‘) # arr1 = fetchedDataArr arr3 = [] for x in addDataArr: if x.isdigit(): arr3.append(int(x)) else: arr3 = [] # passing parameter result = remove_matching_values(arr1, arr2, arr3) #———-customfields——- rawCustomData = str(input_data[‚customFields‘]) if rawCustomData!=“1″: data_list = rawCustomData.split(‚,‘) rawResult = [] for item in data_list: name, value = item.split(‚:‘) rawResult.append({’name‘: name, ‚value‘: value}) customData=list(rawResult) else: rawResult = [] customData=list(rawResult) #PAYLOAD rawPayload ={ „id“: Id, „name“: (f'{Name}‘), „type“: (f'{type}‘), „sku“: (f'{sku}‘), „description“: (f'{description}‘), „weight“: weight, „width“: width, „depth“: depth, „height“: height, „price“: price, „bin_picking_number“: (f'{bin_picking_number}‘), „brand_name“: (f'{brand_name}‘), „inventory_level“: inventory_level, „inventory_warning_level“: inventory_warning_level, „inventory_tracking“: (f'{inventoryData}‘), „is_free_shipping“: mod, „is_visible“: productVisibleMod, „availability“: (f'{availability}‘), „preorder_release_date“:(f'{preOrderDate}‘), „is_preorder_only“:resPreOrderOnly, „search_keywords“: (f'{search_keywords}‘), „meta_keywords“: metaWords, „meta_description“: (f'{meta_description}‘), „sort_order“: sortOrder, „tax_class_id“: taxClass, „categories“: result, „upc“:(f'{upc}‘), „custom_fields“:customData } filtered_payload = {k: v for k, v in rawPayload.items() if v not in (None, „NoData“,[], 100000000000, -100000000000.0)} payload=json.dumps([filtered_payload]) headers = { ‚X-Auth-Token‘: ‚Your Auth token‘, #Enter your Auth token here ‚Content-Type‘: ‚application/json‘, ‚Accept‘: ‚application/json‘ } response1 = requests.request(„PUT“, url, headers=headers, data=payload) |
Wichtige Dinge:
filtered_payload = {k: v for k, v in rawPayload.items() if v not in (None, „NoData“,[], 100000000000, „“, -100000000000.0)}
Durch die Verwendung dieser filtered_payload werden ungültige Daten herausgefiltert und ihre Felder aus der Nutzlast entfernt.
URL:- Geben Sie die URL Ihres Shops ein
X-Auth-Token:- Geben Sie Ihren X-Auth-Token ein
Hinweis: Bei der Eingabe der Daten sollten Sie diese Arten von Eingaben nicht verwenden
None, „NoData“,[], 100000000000, „“, -100000000000.0
Diese Art von Eingaben führt zu einem Fehler.
Wenn Sie diese Schritte befolgen, können Sie neue Produkte erstellen und bestehende Produkte in BigCommerce aktualisieren.
Ausführlichere Anleitungen und Tutorials finden Sie auch auf der Zapier-Website und im Support-Center des Unternehmens.
Vergessen Sie nicht, dass wir ein Team von BigCommerce-Experten haben. Wenn Sie also jemals Unterstützung benötigen oder Fragen haben, kontaktieren Sie uns bitte unter manish@bay20.com oder rufen Sie uns unter +91-8800519180 an.






