Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Visual FoxPro) 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
LOCAL loHttp LOCAL lnSuccess LOCAL loJson LOCAL loResp LOCAL loSbResponseBody LOCAL loJResp LOCAL lnRespStatusCode LOCAL lnPoints LOCAL lcContent LOCAL lcTitle LOCAL lcCreatedAt LOCAL lcId LOCAL lnTotal LOCAL lnAggregationsRating_averageAvg LOCAL lcAggregationsRating_averageApiAlias LOCAL lcApiAlias LOCAL i LOCAL lnCount_i * This example assumes the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Http') loHttp = CreateObject('Chilkat.Http') * 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 * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject') loJson = CreateObject('Chilkat.JsonObject') loJson.UpdateInt("page",1) loJson.UpdateInt("limit",3) loJson.UpdateString("aggregations[0].type","avg") loJson.UpdateString("aggregations[0].field","points") loJson.UpdateString("aggregations[0].name","rating-average") loJson.UpdateString("includes.product_review[0]","id") loJson.UpdateString("includes.product_review[1]","content") loJson.UpdateString("includes.product_review[2]","title") loJson.UpdateString("includes.product_review[3]","createdAt") loJson.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. loHttp.SetRequestHeader("sw-access-key","<sales-channel-api-access-key>") loHttp.SetUrlVar("id","07afcfeb9725469cacb0010000731838") loResp = loHttp.PostJson3("https://my-shopware-6-shop.de/store-api/v3/product/{$id}/reviews","application/json",loJson) IF (loHttp.LastMethodSuccess = 0) THEN ? loHttp.LastErrorText RELEASE loHttp RELEASE loJson CANCEL ENDIF * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.StringBuilder') loSbResponseBody = CreateObject('Chilkat.StringBuilder') loResp.GetBodySb(loSbResponseBody) * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject') loJResp = CreateObject('Chilkat.JsonObject') loJResp.LoadSb(loSbResponseBody) loJResp.EmitCompact = 0 ? "Response Body:" ? loJResp.Emit() * If we get a 401 response, it may be that our access token expired and we need to fetch a new one. lnRespStatusCode = loResp.StatusCode ? "Response Status Code = " + STR(lnRespStatusCode) IF (lnRespStatusCode >= 400) THEN ? "Response Header:" ? loResp.Header ? "Failed." RELEASE loResp RELEASE loHttp RELEASE loJson RELEASE loSbResponseBody RELEASE loJResp CANCEL ENDIF RELEASE loResp * 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 lnTotal = loJResp.IntOf("total") lnAggregationsRating_averageAvg = loJResp.IntOf("aggregations.rating-average.avg") lcAggregationsRating_averageApiAlias = loJResp.StringOf("aggregations.rating-average.apiAlias") lcApiAlias = loJResp.StringOf("apiAlias") i = 0 lnCount_i = loJResp.SizeOfArray("elements") DO WHILE i < lnCount_i loJResp.I = i lnPoints = loJResp.IntOf("elements[i].points") lcContent = loJResp.StringOf("elements[i].content") lcTitle = loJResp.StringOf("elements[i].title") lcCreatedAt = loJResp.StringOf("elements[i].createdAt") lcId = loJResp.StringOf("elements[i].id") lcApiAlias = loJResp.StringOf("elements[i].apiAlias") i = i + 1 ENDDO RELEASE loHttp RELEASE loJson RELEASE loSbResponseBody RELEASE loJResp |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.