VBScript
VBScript
Square API - Retrieve Catalog Object
See more Square Examples
Returns a single CatalogItem as a CatalogObject based on the provided ID.Chilkat VBScript Downloads
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")
' Implements the following CURL command:
' curl https://connect.squareup.com/v2/catalog/object/W62UWFY35CWMYGVWK6TWJDNI?include_related_objects=true
' -H 'Square-Version: 2020-07-22'
' -H 'Authorization: Bearer ACCESS_TOKEN'
' -H 'Content-Type: application/json'
' Use the following online tool to generate HTTP code from a CURL command
' Convert a cURL Command to HTTP Source Code
' Adds the "Authorization: Bearer ACCESS_TOKEN" header.
http.AuthToken = "ACCESS_TOKEN"
http.SetRequestHeader "Square-Version","2020-07-22"
http.SetRequestHeader "Content-Type","application/json"
success = http.SetUrlVar("id","2PTZYUOFGGDMT75UZLHQAPAC")
' This example uses the sandbox: connect.squareupsandbox.com
' Production should use connect.squareup.com
set sbResponseBody = CreateObject("Chilkat.StringBuilder")
success = http.QuickGetSb("https://connect.squareupsandbox.com/v2/catalog/object/{$id}?include_related_objects=true",sbResponseBody)
If (success = 0) Then
outFile.WriteLine(http.LastErrorText)
WScript.Quit
End If
set jResp = CreateObject("Chilkat.JsonObject")
success = jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = 0
outFile.WriteLine("Response Body:")
outFile.WriteLine(jResp.Emit())
respStatusCode = http.LastStatus
outFile.WriteLine("Response Status Code = " & respStatusCode)
If (respStatusCode >= 400) Then
outFile.WriteLine("Response Header:")
outFile.WriteLine(http.LastHeader)
outFile.WriteLine("Failed.")
WScript.Quit
End If
' Sample JSON response:
' (Sample code for parsing the JSON response is shown below)
' {
' "object": {
' "type": "ITEM",
' "id": "W62UWFY35CWMYGVWK6TWJDNI",
' "updated_at": "2016-11-16T22:25:24.878Z",
' "version": 1479335124878,
' "is_deleted": false,
' "present_at_all_locations": true,
' "item_data": {
' "name": "Tea",
' "description": "Hot Leaf Juice",
' "category_id": "BJNQCF2FJ6S6UIDT65ABHLRX",
' "tax_ids": [
' "HURXQOOAIC4IZSI2BEXQRYFY"
' ],
' "variations": [
' {
' "type": "ITEM_VARIATION",
' "id": "2TZFAOHWGG7PAK2QEXWYPZSP",
' "updated_at": "2016-11-16T22:25:24.878Z",
' "version": 1479335124878,
' "is_deleted": false,
' "present_at_all_locations": true,
' "item_variation_data": {
' "item_id": "W62UWFY35CWMYGVWK6TWJDNI",
' "name": "Mug",
' "ordinal": 0,
' "pricing_type": "FIXED_PRICING",
' "price_money": {
' "amount": 150,
' "currency": "USD"
' }
' }
' }
' ]
' }
' },
' "related_objects": [
' {
' "type": "CATEGORY",
' "id": "BJNQCF2FJ6S6UIDT65ABHLRX",
' "updated_at": "2016-11-16T22:25:24.878Z",
' "version": 1479335124878,
' "is_deleted": false,
' "present_at_all_locations": true,
' "category_data": {
' "name": "Beverages"
' }
' },
' {
' "type": "TAX",
' "id": "HURXQOOAIC4IZSI2BEXQRYFY",
' "updated_at": "2016-11-16T22:25:24.878Z",
' "version": 1479335124878,
' "is_deleted": false,
' "present_at_all_locations": true,
' "tax_data": {
' "name": "Sales Tax",
' "calculation_phase": "TAX_SUBTOTAL_PHASE",
' "inclusion_type": "ADDITIVE",
' "percentage": "5.0",
' "enabled": true
' }
' }
' ]
' }
' Sample code for parsing the JSON response...
' Use the following online tool to generate parsing code from sample JSON:
' Generate Parsing Code from JSON
objectType = jResp.StringOf("object.type")
objectId = jResp.StringOf("object.id")
objectUpdated_at = jResp.StringOf("object.updated_at")
objectVersion = jResp.IntOf("object.version")
objectIs_deleted = jResp.BoolOf("object.is_deleted")
objectPresent_at_all_locations = jResp.BoolOf("object.present_at_all_locations")
objectItem_dataName = jResp.StringOf("object.item_data.name")
objectItem_dataDescription = jResp.StringOf("object.item_data.description")
objectItem_dataCategory_id = jResp.StringOf("object.item_data.category_id")
i = 0
count_i = jResp.SizeOfArray("object.item_data.tax_ids")
Do While i < count_i
jResp.I = i
strVal = jResp.StringOf("object.item_data.tax_ids[i]")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("object.item_data.variations")
Do While i < count_i
jResp.I = i
v_type = jResp.StringOf("object.item_data.variations[i].type")
id = jResp.StringOf("object.item_data.variations[i].id")
updated_at = jResp.StringOf("object.item_data.variations[i].updated_at")
version = jResp.IntOf("object.item_data.variations[i].version")
is_deleted = jResp.BoolOf("object.item_data.variations[i].is_deleted")
present_at_all_locations = jResp.BoolOf("object.item_data.variations[i].present_at_all_locations")
item_variation_dataItem_id = jResp.StringOf("object.item_data.variations[i].item_variation_data.item_id")
item_variation_dataName = jResp.StringOf("object.item_data.variations[i].item_variation_data.name")
item_variation_dataOrdinal = jResp.IntOf("object.item_data.variations[i].item_variation_data.ordinal")
item_variation_dataPricing_type = jResp.StringOf("object.item_data.variations[i].item_variation_data.pricing_type")
item_variation_dataPrice_moneyAmount = jResp.IntOf("object.item_data.variations[i].item_variation_data.price_money.amount")
item_variation_dataPrice_moneyCurrency = jResp.StringOf("object.item_data.variations[i].item_variation_data.price_money.currency")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("related_objects")
Do While i < count_i
jResp.I = i
v_type = jResp.StringOf("related_objects[i].type")
id = jResp.StringOf("related_objects[i].id")
updated_at = jResp.StringOf("related_objects[i].updated_at")
version = jResp.IntOf("related_objects[i].version")
is_deleted = jResp.BoolOf("related_objects[i].is_deleted")
present_at_all_locations = jResp.BoolOf("related_objects[i].present_at_all_locations")
category_dataName = jResp.StringOf("related_objects[i].category_data.name")
tax_dataName = jResp.StringOf("related_objects[i].tax_data.name")
tax_dataCalculation_phase = jResp.StringOf("related_objects[i].tax_data.calculation_phase")
tax_dataInclusion_type = jResp.StringOf("related_objects[i].tax_data.inclusion_type")
tax_dataPercentage = jResp.StringOf("related_objects[i].tax_data.percentage")
tax_dataEnabled = jResp.BoolOf("related_objects[i].tax_data.enabled")
i = i + 1
Loop
outFile.Close