Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Visual FoxPro) GetHarvest - List ClientsReturns a list of your clients. For more information, see https://help.getharvest.com/api-v2/clients-api/clients/clients/
LOCAL loHttp LOCAL lnSuccess LOCAL loSbResponseBody LOCAL loJResp LOCAL lnRespStatusCode LOCAL lnPer_page LOCAL lnTotal_pages LOCAL lnTotal_entries LOCAL lcNext_page LOCAL lcPrevious_page LOCAL lnPage LOCAL lcLinksFirst LOCAL lcLinksNext LOCAL lcLinksPrevious LOCAL lcLinksLast LOCAL i LOCAL lnCount_i LOCAL lnId LOCAL lcName LOCAL lnIs_active LOCAL lcAddress LOCAL lcCreated_at LOCAL lcUpdated_at LOCAL lcCurrency * This example assumes the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Http') loHttp = CreateObject('Chilkat.Http') * 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)" loHttp.SetRequestHeader("User-Agent","MyApp (yourname@example.com)") loHttp.SetRequestHeader("Authorization","Bearer ACCESS_TOKEN") loHttp.SetRequestHeader("Harvest-Account-Id","ACCOUNT_ID") * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.StringBuilder') loSbResponseBody = CreateObject('Chilkat.StringBuilder') lnSuccess = loHttp.QuickGetSb("https://api.harvestapp.com/v2/clients",loSbResponseBody) IF (lnSuccess = 0) THEN ? loHttp.LastErrorText RELEASE loHttp RELEASE loSbResponseBody CANCEL ENDIF * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject') loJResp = CreateObject('Chilkat.JsonObject') loJResp.LoadSb(loSbResponseBody) loJResp.EmitCompact = 0 ? "Response Body:" ? loJResp.Emit() lnRespStatusCode = loHttp.LastStatus ? "Response Status Code = " + STR(lnRespStatusCode) IF (lnRespStatusCode >= 400) THEN ? "Response Header:" ? loHttp.LastHeader ? "Failed." RELEASE loHttp RELEASE loSbResponseBody RELEASE loJResp CANCEL ENDIF * 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 lnPer_page = loJResp.IntOf("per_page") lnTotal_pages = loJResp.IntOf("total_pages") lnTotal_entries = loJResp.IntOf("total_entries") lcNext_page = loJResp.StringOf("next_page") lcPrevious_page = loJResp.StringOf("previous_page") lnPage = loJResp.IntOf("page") lcLinksFirst = loJResp.StringOf("links.first") lcLinksNext = loJResp.StringOf("links.next") lcLinksPrevious = loJResp.StringOf("links.previous") lcLinksLast = loJResp.StringOf("links.last") i = 0 lnCount_i = loJResp.SizeOfArray("clients") DO WHILE i < lnCount_i loJResp.I = i lnId = loJResp.IntOf("clients[i].id") lcName = loJResp.StringOf("clients[i].name") lnIs_active = loJResp.BoolOf("clients[i].is_active") lcAddress = loJResp.StringOf("clients[i].address") lcCreated_at = loJResp.StringOf("clients[i].created_at") lcUpdated_at = loJResp.StringOf("clients[i].updated_at") lcCurrency = loJResp.StringOf("clients[i].currency") i = i + 1 ENDDO RELEASE loHttp RELEASE loSbResponseBody RELEASE loJResp |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.