Sample code for 30+ languages & platforms
Xojo Plugin

MYOB: Fetch the Category Register

See more MYOB Examples

Return transactions grouped with categories A register of all transactions grouped with categories

Chilkat Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
success = False

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

Dim http As New Chilkat.Http

// Implements the following CURL command:

// curl --request GET "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/CategoryRegister" \
//   --header "Authorization: Bearer ACCESS_TOKEN" \
//   --header "x-myobapi-key: {{myob_api_key}}" \
//   --header "x-myobapi-version: v2" \
//   --header "Accept-Encoding: gzip,deflate"

http.SetRequestHeader "Authorization","Bearer ACCESS_TOKEN"
http.SetRequestHeader "x-myobapi-key","{{myob_api_key}}"
http.SetRequestHeader "Accept-Encoding","gzip,deflate"
http.SetRequestHeader "x-myobapi-version","v2"

Dim sbResponseBody As New Chilkat.StringBuilder
success = http.QuickGetSb("https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/CategoryRegister",sbResponseBody)
If (success = False) Then
    System.DebugLog(http.LastErrorText)
    Return
End If

Dim jResp As New Chilkat.JsonObject
success = jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = False

System.DebugLog("Response Body:")
System.DebugLog(jResp.Emit())

Dim respStatusCode As Int32
respStatusCode = http.LastStatus
System.DebugLog("Response Status Code = " + Str(respStatusCode))
If (respStatusCode >= 400) Then
    System.DebugLog("Response Header:")
    System.DebugLog(http.LastHeader)
    System.DebugLog("Failed.")
    Return
End If

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

// {
//   "Items": [
//     {
//       "Category": {
//         "UID": "80b6a90d-e22a-47e3-a5e7-a2ee9126f153",
//         "Name": "Craigs Category",
//         "DisplayID": "Craigs",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/80b6a90d-e22a-47e3-a5e7-a2ee9126f153"
//       },
//       "Account": {
//         "UID": "40ecbafd-51c0-40f3-9a28-d6a2b6d7422a",
//         "Name": "Produce Income",
//         "DisplayID": "4-1000",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/40ecbafd-51c0-40f3-9a28-d6a2b6d7422a"
//       },
//       "Year": 2015,
//       "Month": 8,
//       "Activity": -1050,
//       "YearEndActivity": 0,
//       "RowVersion": "1093536881590665216"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "9541300c-edee-4e0b-82c0-9bc0d1917b2f",
//         "Name": "Grain Income",
//         "DisplayID": "4-2000",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/9541300c-edee-4e0b-82c0-9bc0d1917b2f"
//       },
//       "Year": 2015,
//       "Month": 8,
//       "Activity": -135.23,
//       "YearEndActivity": 0,
//       "RowVersion": "7736911480938823680"
//     },
//     {
//       "Category": {
//         "UID": "80b6a90d-e22a-47e3-a5e7-a2ee9126f153",
//         "Name": "Craigs Category",
//         "DisplayID": "Craigs",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/80b6a90d-e22a-47e3-a5e7-a2ee9126f153"
//       },
//       "Account": {
//         "UID": "80b97a33-a650-4f6c-9e40-d466d92e4bcb",
//         "Name": "GST Paid",
//         "DisplayID": "2-1220",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/80b97a33-a650-4f6c-9e40-d466d92e4bcb"
//       },
//       "Year": 2015,
//       "Month": 8,
//       "Activity": -105,
//       "YearEndActivity": 0,
//       "RowVersion": "1165594475628593152"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "80b97a33-a650-4f6c-9e40-d466d92e4bcb",
//         "Name": "GST Paid",
//         "DisplayID": "2-1220",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/80b97a33-a650-4f6c-9e40-d466d92e4bcb"
//       },
//       "Year": 2013,
//       "Month": 9,
//       "Activity": -62.5,
//       "YearEndActivity": 0,
//       "RowVersion": "4407341782405218304"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "80b97a33-a650-4f6c-9e40-d466d92e4bcb",
//         "Name": "GST Paid",
//         "DisplayID": "2-1220",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/80b97a33-a650-4f6c-9e40-d466d92e4bcb"
//       },
//       "Year": 2015,
//       "Month": 8,
//       "Activity": -29.15,
//       "YearEndActivity": 0,
//       "RowVersion": "7881026669014679552"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "9904f3e0-0ec1-4fee-be1c-477a8624d515",
//         "Name": "Inventory",
//         "DisplayID": "1-1320",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/9904f3e0-0ec1-4fee-be1c-477a8624d515"
//       },
//       "Year": 2015,
//       "Month": 8,
//       "Activity": -18.33,
//       "YearEndActivity": 0,
//       "RowVersion": "-1284645196637667328"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "180a940e-714d-4ebb-88db-3f6044294cad",
//         "Name": "Voluntary Withholdings Payable",
//         "DisplayID": "2-1310",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/180a940e-714d-4ebb-88db-3f6044294cad"
//       },
//       "Year": 2013,
//       "Month": 9,
//       "Activity": 3,
//       "YearEndActivity": 0,
//       "RowVersion": "4479399376443146240"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "44c2047b-5b16-43cf-82ee-d8a174ebec09",
//         "Name": "Voluntary Withholding Credits",
//         "DisplayID": "1-1340",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/44c2047b-5b16-43cf-82ee-d8a174ebec09"
//       },
//       "Year": 2013,
//       "Month": 9,
//       "Activity": 14,
//       "YearEndActivity": 0,
//       "RowVersion": "4335284188367290368"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "b2ff345a-2de6-4160-b319-66d01334a5ad",
//         "Name": "GST Collected",
//         "DisplayID": "2-1210",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/b2ff345a-2de6-4160-b319-66d01334a5ad"
//       },
//       "Year": 2015,
//       "Month": 8,
//       "Activity": 24.72,
//       "YearEndActivity": 0,
//       "RowVersion": "-1428760384713523200"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "40ecbafd-51c0-40f3-9a28-d6a2b6d7422a",
//         "Name": "Produce Income",
//         "DisplayID": "4-1000",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/40ecbafd-51c0-40f3-9a28-d6a2b6d7422a"
//       },
//       "Year": 2015,
//       "Month": 8,
//       "Activity": 90.91,
//       "YearEndActivity": 0,
//       "RowVersion": "-1572875572789379072"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "737c0032-a48a-48fa-930e-07da50005d0b",
//         "Name": "Cost Of Sales",
//         "DisplayID": "5-1000",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/737c0032-a48a-48fa-930e-07da50005d0b"
//       },
//       "Year": 2015,
//       "Month": 8,
//       "Activity": 91.66,
//       "YearEndActivity": 0,
//       "RowVersion": "-1212587602599739392"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "bb628b6e-b113-46df-bb22-cc73ebb33449",
//         "Name": "Trade Debtors",
//         "DisplayID": "1-1310",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/bb628b6e-b113-46df-bb22-cc73ebb33449"
//       },
//       "Year": 2015,
//       "Month": 8,
//       "Activity": 198.62,
//       "YearEndActivity": 0,
//       "RowVersion": "-1140530008561811456"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "72bec1c2-49a6-4b02-96d0-5ee79fefdefa",
//         "Name": "Trade Creditors",
//         "DisplayID": "2-1510",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/72bec1c2-49a6-4b02-96d0-5ee79fefdefa"
//       },
//       "Year": 2015,
//       "Month": 8,
//       "Activity": 320.7,
//       "YearEndActivity": 0,
//       "RowVersion": "7592796292862967808"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "6ef5febd-4027-4f87-9bb3-2f1d904eb948",
//         "Name": "Accum. Depr. Buildings",
//         "DisplayID": "1-2420",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/6ef5febd-4027-4f87-9bb3-2f1d904eb948"
//       },
//       "Year": 2013,
//       "Month": 9,
//       "Activity": 625,
//       "YearEndActivity": 0,
//       "RowVersion": "4263226594329362432"
//     },
//     {
//       "Category": {
//         "UID": "20b483b2-9a89-4793-b8c3-2da1a6284e1f",
//         "Name": "Postman sample",
//         "DisplayID": "Postman001",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/20b483b2-9a89-4793-b8c3-2da1a6284e1f"
//       },
//       "Account": {
//         "UID": "72bec1c2-49a6-4b02-96d0-5ee79fefdefa",
//         "Name": "Trade Creditors",
//         "DisplayID": "2-1510",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/72bec1c2-49a6-4b02-96d0-5ee79fefdefa"
//       },
//       "Year": 2013,
//       "Month": 9,
//       "Activity": 698.5,
//       "YearEndActivity": 0,
//       "RowVersion": "4191169000291434496"
//     },
//     {
//       "Category": {
//         "UID": "80b6a90d-e22a-47e3-a5e7-a2ee9126f153",
//         "Name": "Craigs Category",
//         "DisplayID": "Craigs",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/80b6a90d-e22a-47e3-a5e7-a2ee9126f153"
//       },
//       "Account": {
//         "UID": "b2ff345a-2de6-4160-b319-66d01334a5ad",
//         "Name": "GST Collected",
//         "DisplayID": "2-1210",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/b2ff345a-2de6-4160-b319-66d01334a5ad"
//       },
//       "Year": 2014,
//       "Month": 1,
//       "Activity": 909.09,
//       "YearEndActivity": 0,
//       "RowVersion": "-7193649382724468736"
//     },
//     {
//       "Category": {
//         "UID": "80b6a90d-e22a-47e3-a5e7-a2ee9126f153",
//         "Name": "Craigs Category",
//         "DisplayID": "Craigs",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/80b6a90d-e22a-47e3-a5e7-a2ee9126f153"
//       },
//       "Account": {
//         "UID": "72bec1c2-49a6-4b02-96d0-5ee79fefdefa",
//         "Name": "Trade Creditors",
//         "DisplayID": "2-1510",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/72bec1c2-49a6-4b02-96d0-5ee79fefdefa"
//       },
//       "Year": 2015,
//       "Month": 8,
//       "Activity": 1155,
//       "YearEndActivity": 0,
//       "RowVersion": "1021479287552737280"
//     },
//     {
//       "Category": {
//         "UID": "80b6a90d-e22a-47e3-a5e7-a2ee9126f153",
//         "Name": "Craigs Category",
//         "DisplayID": "Craigs",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/80b6a90d-e22a-47e3-a5e7-a2ee9126f153"
//       },
//       "Account": {
//         "UID": "40ecbafd-51c0-40f3-9a28-d6a2b6d7422a",
//         "Name": "Produce Income",
//         "DisplayID": "4-1000",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/40ecbafd-51c0-40f3-9a28-d6a2b6d7422a"
//       },
//       "Year": 2014,
//       "Month": 1,
//       "Activity": 9090.91,
//       "YearEndActivity": 0,
//       "RowVersion": "-7265706976762396672"
//     },
//     {
//       "Category": {
//         "UID": "80b6a90d-e22a-47e3-a5e7-a2ee9126f153",
//         "Name": "Craigs Category",
//         "DisplayID": "Craigs",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Category/80b6a90d-e22a-47e3-a5e7-a2ee9126f153"
//       },
//       "Account": {
//         "UID": "bb628b6e-b113-46df-bb22-cc73ebb33449",
//         "Name": "Trade Debtors",
//         "DisplayID": "1-1310",
//         "URI": "https://ar1.api.myob.com/accountright/c06778dd-4371-4a83-975f-522df65d7574/GeneralLedger/Account/bb628b6e-b113-46df-bb22-cc73ebb33449"
//       },
//       "Year": 2014,
//       "Month": 1,
//       "Activity": 10000,
//       "YearEndActivity": 0,
//       "RowVersion": "-7337764570800324608"
//     }
//   ],
//   "NextPageLink": null,
//   "Count": 19
// }

// Sample code for parsing the JSON response...
// Use the following online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON

Dim NextPageLink As String
Dim Count As Int32
Dim i As Int32
Dim count_i As Int32
Dim CategoryUID As String
Dim CategoryName As String
Dim CategoryDisplayID As String
Dim CategoryURI As String
Dim AccountUID As String
Dim AccountName As String
Dim AccountDisplayID As String
Dim AccountURI As String
Dim Year As Int32
Dim Month As Int32
Dim Activity As Int32
Dim YearEndActivity As Int32
Dim RowVersion As String

NextPageLink = jResp.StringOf("NextPageLink")
Count = jResp.IntOf("Count")
i = 0
count_i = jResp.SizeOfArray("Items")
While i < count_i
    jResp.I = i
    CategoryUID = jResp.StringOf("Items[i].Category.UID")
    CategoryName = jResp.StringOf("Items[i].Category.Name")
    CategoryDisplayID = jResp.StringOf("Items[i].Category.DisplayID")
    CategoryURI = jResp.StringOf("Items[i].Category.URI")
    AccountUID = jResp.StringOf("Items[i].Account.UID")
    AccountName = jResp.StringOf("Items[i].Account.Name")
    AccountDisplayID = jResp.StringOf("Items[i].Account.DisplayID")
    AccountURI = jResp.StringOf("Items[i].Account.URI")
    Year = jResp.IntOf("Items[i].Year")
    Month = jResp.IntOf("Items[i].Month")
    Activity = jResp.IntOf("Items[i].Activity")
    YearEndActivity = jResp.IntOf("Items[i].YearEndActivity")
    RowVersion = jResp.StringOf("Items[i].RowVersion")
    i = i + 1
Wend