Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(Excel) Shopware 6 - Get Reviews of a ProductSee more Shopware 6 ExamplesGet the reviews of a single product (specified by product id). For more information, see https://docs.shopware.com/en/shopware-platform-dev-en/store-api-guide/products
' This example assumes the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim http As Chilkat.Http Set http = Chilkat.NewHttp ' Sends the following POST ' POST /store-api/v1/product/07afcfeb9725469cacb0010000731838/reviews ' { ' "page": 1, ' "limit": 3, ' "aggregations": [ ' { "type": "avg", "field": "points", "name": "rating-average"} ' ], ' "includes": { ' "product_review": ["id", "content", "title", "createdAt", "points"] ' } ' } ' Use this online tool to generate code from sample JSON: ' Generate Code to Create JSON Dim json As Chilkat.JsonObject Set json = Chilkat.NewJsonObject Dim success As Boolean success = json.UpdateInt("page",1) success = json.UpdateInt("limit",3) success = json.UpdateString("aggregations[0].type","avg") success = json.UpdateString("aggregations[0].field","points") success = json.UpdateString("aggregations[0].name","rating-average") success = json.UpdateString("includes.product_review[0]","id") success = json.UpdateString("includes.product_review[1]","content") success = json.UpdateString("includes.product_review[2]","title") success = json.UpdateString("includes.product_review[3]","createdAt") success = json.UpdateString("includes.product_review[4]","points") ' This request simply authenticates with the sw-access-key you can interactively copy from your ' sales channel in the Shopware 6 administration web portal. ' We do NOT use OAuth2 for Store API requests. http.SetRequestHeader "sw-access-key","<sales-channel-api-access-key>" success = http.SetUrlVar("id","07afcfeb9725469cacb0010000731838") Set resp = http.PostJson3("https://my-shopware-6-shop.de/store-api/v3/product/{$id}/reviews","application/json",json) If (http.LastMethodSuccess = False) Then Debug.Print http.LastErrorText Exit Sub End If Dim sbResponseBody As Chilkat.StringBuilder Set sbResponseBody = Chilkat.NewStringBuilder success = resp.GetBodySb(sbResponseBody) Dim jResp As Chilkat.JsonObject Set jResp = Chilkat.NewJsonObject success = jResp.LoadSb(sbResponseBody) jResp.EmitCompact = False Debug.Print "Response Body:" Debug.Print jResp.Emit() ' If we get a 401 response, it may be that our access token expired and we need to fetch a new one. respStatusCode = resp.StatusCode Debug.Print "Response Status Code = "; respStatusCode If (respStatusCode >= 400) Then Debug.Print "Response Header:" Debug.Print resp.Header Debug.Print "Failed." Exit Sub End If ' Sample JSON response: ' (Sample code for parsing the JSON response is shown below) ' { ' "total": 3, ' "aggregations": { ' "rating-average": { ' "avg": 5, ' "apiAlias": "rating-average_aggregation" ' } ' }, ' "elements": [ ' { ' "points": 5, ' "content": "Lorem ipsum dolor ... sit amet.", ' "title": "Really cool product", ' "createdAt": "2020-08-27T09:49:48.776+00:00", ' "id": "0fa91ce3e96a4bc2be4bd9ce752c3425", ' "apiAlias": "product_review" ' }, ' { ' "points": 5, ' "content": "Lorem ipsum dolor ... sit amet.", ' "title": "Really cool product", ' "createdAt": "2020-08-27T09:49:48.776+00:00", ' "id": "211c5785d293434c9ef3c624c675f545", ' "apiAlias": "product_review" ' }, ' { ' "points": 5, ' "content": "Lorem ipsum dolor ... sit amet.", ' "title": "Really cool product", ' "createdAt": "2020-08-27T09:49:48.776+00:00", ' "id": "2fbb5fe2e29a4d70aa5854ce7ce3e20b", ' "apiAlias": "product_review" ' } ' ], ' "apiAlias": "dal_entity_search_result" ' } ' Sample code for parsing the JSON response... ' Use the following online tool to generate parsing code from sample JSON: ' Generate Parsing Code from JSON total = jResp.IntOf("total") aggregationsRating_averageAvg = jResp.IntOf("aggregations.rating-average.avg") aggregationsRating_averageApiAlias = jResp.StringOf("aggregations.rating-average.apiAlias") apiAlias = jResp.StringOf("apiAlias") i = 0 count_i = jResp.SizeOfArray("elements") Do While i < count_i jResp.I = i points = jResp.IntOf("elements[i].points") content = jResp.StringOf("elements[i].content") title = jResp.StringOf("elements[i].title") createdAt = jResp.StringOf("elements[i].createdAt") id = jResp.StringOf("elements[i].id") apiAlias = jResp.StringOf("elements[i].apiAlias") i = i + 1 Loop |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.