Sample code for 30+ languages & platforms
VBScript

Shopware 6 - List Products

See more Shopware 6 Examples

Get a list of products.

Chilkat VBScript Downloads

VBScript
Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
'Create a Unicode (utf-16) output text file.
Set outFile = fso.CreateTextFile("output.txt", True, True)

success = 0

' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.

set http = CreateObject("Chilkat.Http")

' Sends the following POST

' POST /store-api/v3/product
' {
'     "includes": {
'         "product": ["id", "name"]
'     }
' }

' Use this online tool to generate code from sample JSON:
' Generate Code to Create JSON

set json = CreateObject("Chilkat.JsonObject")
success = json.UpdateString("includes.product[0]","id")
success = json.UpdateString("includes.product[1]","name")

' 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>"

set resp = CreateObject("Chilkat.HttpResponse")
success = http.HttpJson("POST","https://my-shopware-6-shop.de/store-api/v3/product",json,"application/json",resp)
If (success = 0) Then
    outFile.WriteLine(http.LastErrorText)
    WScript.Quit
End If

set sbResponseBody = CreateObject("Chilkat.StringBuilder")
success = resp.GetBodySb(sbResponseBody)
set jResp = CreateObject("Chilkat.JsonObject")
success = jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = 0

outFile.WriteLine("Response Body:")
outFile.WriteLine(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
outFile.WriteLine("Response Status Code = " & respStatusCode)
If (respStatusCode >= 400) Then
    outFile.WriteLine("Response Header:")
    outFile.WriteLine(resp.Header)
    outFile.WriteLine("Failed.")
    WScript.Quit
End If

' Sample JSON response:
' (Sample code for parsing the JSON response is shown below)

' {
'   "total": 2,
'   "aggregations": [],
'   "elements": [
'     {
'       "id": "00a284072bcb42ed8fee31e26ea53b60",
'       "name": "Synergistic Wooden Coffee Patch",
'       "apiAlias": "product"
'     },
'     {
'       "id": "bd835e75afa14b09b7da156d095a9a30",
'       "name": "Intelligent Cotton Presto Pesto",
'       "apiAlias": "product"
'     }
'   ],
'   "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")
apiAlias = jResp.StringOf("apiAlias")
i = 0
count_i = jResp.SizeOfArray("elements")
Do While i < count_i
    jResp.I = i
    id = jResp.StringOf("elements[i].id")
    name = jResp.StringOf("elements[i].name")
    apiAlias = jResp.StringOf("elements[i].apiAlias")
    i = i + 1
Loop

outFile.Close