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.