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) GetHarvest - List ClientsReturns a list of your clients. For more information, see https://help.getharvest.com/api-v2/clients-api/clients/clients/
' 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 ' Implements the following CURL command: ' curl "https://api.harvestapp.com/v2/clients" \ ' -H "Authorization: Bearer ACCESS_TOKEN" \ ' -H "Harvest-Account-Id: ACCOUNT_ID" \ ' -H "User-Agent: MyApp (yourname@example.com)" http.SetRequestHeader "User-Agent","MyApp (yourname@example.com)" http.SetRequestHeader "Authorization","Bearer ACCESS_TOKEN" http.SetRequestHeader "Harvest-Account-Id","ACCOUNT_ID" Dim sbResponseBody As Chilkat.StringBuilder Set sbResponseBody = Chilkat.NewStringBuilder success = http.QuickGetSb("https://api.harvestapp.com/v2/clients",sbResponseBody) If (success = False) Then Debug.Print http.LastErrorText Exit Sub End If Dim jResp As Chilkat.JsonObject Set jResp = Chilkat.NewJsonObject success = jResp.LoadSb(sbResponseBody) jResp.EmitCompact = False Debug.Print "Response Body:" Debug.Print jResp.Emit() respStatusCode = http.LastStatus Debug.Print "Response Status Code = "; respStatusCode If (respStatusCode >= 400) Then Debug.Print "Response Header:" Debug.Print http.LastHeader Debug.Print "Failed." Exit Sub End If ' Sample JSON response: ' { ' "clients": [ ' { ' "id": 5735776, ' "name": "123 Industries", ' "is_active": true, ' "address": "123 Main St.\r\nAnytown, LA 71223", ' "created_at": "2017-06-26T21:02:12Z", ' "updated_at": "2017-06-26T21:34:11Z", ' "currency": "EUR" ' }, ' { ' "id": 5735774, ' "name": "ABC Corp", ' "is_active": true, ' "address": "456 Main St.\r\nAnytown, CT 06467", ' "created_at": "2017-06-26T21:01:52Z", ' "updated_at": "2017-06-26T21:27:07Z", ' "currency": "USD" ' } ' ], ' "per_page": 100, ' "total_pages": 1, ' "total_entries": 2, ' "next_page": null, ' "previous_page": null, ' "page": 1, ' "links": { ' "first": "https://api.harvestapp.com/v2/clients?page=1&per_page=100", ' "next": null, ' "previous": null, ' "last": "https://api.harvestapp.com/v2/clients?page=1&per_page=100" ' } ' } ' Sample code for parsing the JSON response... ' Use the following online tool to generate parsing code from sample JSON: ' Generate Parsing Code from JSON per_page = jResp.IntOf("per_page") total_pages = jResp.IntOf("total_pages") total_entries = jResp.IntOf("total_entries") next_page = jResp.StringOf("next_page") previous_page = jResp.StringOf("previous_page") page = jResp.IntOf("page") linksFirst = jResp.StringOf("links.first") linksNext = jResp.StringOf("links.next") linksPrevious = jResp.StringOf("links.previous") linksLast = jResp.StringOf("links.last") i = 0 count_i = jResp.SizeOfArray("clients") Do While i < count_i jResp.I = i id = jResp.IntOf("clients[i].id") name = jResp.StringOf("clients[i].name") is_active = jResp.BoolOf("clients[i].is_active") address = jResp.StringOf("clients[i].address") created_at = jResp.StringOf("clients[i].created_at") updated_at = jResp.StringOf("clients[i].updated_at") currency = jResp.StringOf("clients[i].currency") i = i + 1 Loop |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.