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) CallRail API - Listing All CallsReturns a paginated list of all calls in the target account. For more information, see https://apidocs.callrail.com/#listing-all-calls
LOCAL loHttp LOCAL lnSuccess LOCAL loSbResponseBody LOCAL loJResp LOCAL lnRespStatusCode LOCAL lnAnswered LOCAL lcBusiness_phone_number LOCAL lcCustomer_city LOCAL lcCustomer_country LOCAL lcCustomer_name LOCAL lcCustomer_phone_number LOCAL lcCustomer_state LOCAL lcDirection LOCAL lnDuration LOCAL lcId LOCAL lcRecording LOCAL lcRecording_duration LOCAL lcRecording_player LOCAL lcStart_time LOCAL lcTracking_phone_number LOCAL lnVoicemail LOCAL lcAgent_email LOCAL lnPage LOCAL lnPer_page LOCAL lnTotal_pages LOCAL lnTotal_records LOCAL i LOCAL lnCount_i * 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 -H "Authorization: Token token={api_token}" \ * -X GET \ * "https://api.callrail.com/v3/a/{account_id}/calls.json" * Use the following online tool to generate HTTP code from a CURL command * Convert a cURL Command to HTTP Source Code loHttp.SetRequestHeader("Authorization","Token token={api_token}") * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.StringBuilder') loSbResponseBody = CreateObject('Chilkat.StringBuilder') lnSuccess = loHttp.QuickGetSb("https://api.callrail.com/v3/a/{account_id}/calls.json",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: * (Sample code for parsing the JSON response is shown below) * { * "page": 1, * "per_page": 100, * "total_pages": 1, * "total_records": 9, * "calls": [ * { * "answered": false, * "business_phone_number": null, * "customer_city": "Denver", * "customer_country": "US", * "customer_name": "RUEGSEGGER SIMO", * "customer_phone_number": "+13036231131", * "customer_state": "CO", * "direction": "inbound", * "duration": 4, * "id": "CAL8154748ae6bd4e278a7cddd38a662f4f", * "recording": "https://api.callrail.com/v3/a/227799611/calls/111222333/recording.json", * "recording_duration": "27", * "recording_player": "https://app.callrail.com/calls/111222333/recording?access_key=3b91eb7f7cc08a4d01ed", * "start_time": "2017-01-24T11:27:48.119-05:00", * "tracking_phone_number": "+13038163491", * "voicemail": false, * "agent_email": "gil@televised.com" * }, * { * "answered": false, * "business_phone_number": null, * "customer_city": "Blue Ridge", * "customer_country": "US", * "customer_name": "BLUE RIDGE, GA", * "customer_phone_number": "+17064558047", * "customer_state": "GA", * "direction": "inbound", * "duration": 16, * "id": "CAL8154748ae6bd4e278a7cddd38a662f4f", * "recording": null, * "recording_duration": null, * "recording_player": null, * "start_time": "2017-01-24T19:50:03.456-05:00", * "tracking_phone_number": "+17708243899", * "voicemail": false, * "agent_email": "elbert@bpp.com" * } * ] * } * Sample code for parsing the JSON response... * Use the following online tool to generate parsing code from sample JSON: * Generate Parsing Code from JSON lnPage = loJResp.IntOf("page") lnPer_page = loJResp.IntOf("per_page") lnTotal_pages = loJResp.IntOf("total_pages") lnTotal_records = loJResp.IntOf("total_records") i = 0 lnCount_i = loJResp.SizeOfArray("calls") DO WHILE i < lnCount_i loJResp.I = i lnAnswered = loJResp.BoolOf("calls[i].answered") lcBusiness_phone_number = loJResp.StringOf("calls[i].business_phone_number") lcCustomer_city = loJResp.StringOf("calls[i].customer_city") lcCustomer_country = loJResp.StringOf("calls[i].customer_country") lcCustomer_name = loJResp.StringOf("calls[i].customer_name") lcCustomer_phone_number = loJResp.StringOf("calls[i].customer_phone_number") lcCustomer_state = loJResp.StringOf("calls[i].customer_state") lcDirection = loJResp.StringOf("calls[i].direction") lnDuration = loJResp.IntOf("calls[i].duration") lcId = loJResp.StringOf("calls[i].id") lcRecording = loJResp.StringOf("calls[i].recording") lcRecording_duration = loJResp.StringOf("calls[i].recording_duration") lcRecording_player = loJResp.StringOf("calls[i].recording_player") lcStart_time = loJResp.StringOf("calls[i].start_time") lcTracking_phone_number = loJResp.StringOf("calls[i].tracking_phone_number") lnVoicemail = loJResp.BoolOf("calls[i].voicemail") lcAgent_email = loJResp.StringOf("calls[i].agent_email") i = i + 1 ENDDO RELEASE loHttp RELEASE loSbResponseBody RELEASE loJResp |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.