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
(PowerBuilder) QuickBooks - Create an AccountDemonstrates how to send an JSON request to create a QuickBooks account. For more information, see https://developer.intuit.com/app/developer/qbo/docs/api/accounting/ecommerce/account#create-an-account
integer li_rc oleobject loo_JsonToken integer li_Success oleobject loo_Rest integer li_BAutoReconnect oleobject loo_SbAuth oleobject loo_JsonRequest string ls_RequestBody oleobject loo_SbPath string ls_ResponseBody oleobject loo_JsonResponse // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // First get our previously obtained OAuth2 access token. loo_JsonToken = create oleobject // Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0 li_rc = loo_JsonToken.ConnectToNewObject("Chilkat.JsonObject") if li_rc < 0 then destroy loo_JsonToken MessageBox("Error","Connecting to COM object failed") return end if li_Success = loo_JsonToken.LoadFile("qa_data/tokens/qb-access-token.json") loo_Rest = create oleobject // Use "Chilkat_9_5_0.Rest" for versions of Chilkat < 10.0.0 li_rc = loo_Rest.ConnectToNewObject("Chilkat.Rest") li_BAutoReconnect = 1 li_Success = loo_Rest.Connect("sandbox-quickbooks.api.intuit.com",443,1,li_BAutoReconnect) if li_Success <> 1 then Write-Debug loo_Rest.LastErrorText destroy loo_JsonToken destroy loo_Rest return end if loo_SbAuth = create oleobject // Use "Chilkat_9_5_0.StringBuilder" for versions of Chilkat < 10.0.0 li_rc = loo_SbAuth.ConnectToNewObject("Chilkat.StringBuilder") loo_SbAuth.Append("Bearer ") loo_SbAuth.Append(loo_JsonToken.StringOf("access_token")) loo_Rest.Authorization = loo_SbAuth.GetAsString() loo_JsonRequest = create oleobject // Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0 li_rc = loo_JsonRequest.ConnectToNewObject("Chilkat.JsonObject") loo_JsonRequest.AppendString("AccountType","Credit Card") loo_JsonRequest.AppendString("Name","Banana Republic") ls_RequestBody = loo_JsonRequest.Emit() // "123146096291789" is the company ID. loo_SbPath = create oleobject // Use "Chilkat_9_5_0.StringBuilder" for versions of Chilkat < 10.0.0 li_rc = loo_SbPath.ConnectToNewObject("Chilkat.StringBuilder") loo_SbPath.Append("/v3/company/123146096291789/account?minorversion=45") loo_Rest.AddHeader("Content-Type","application/json") loo_Rest.AddHeader("Accept","application/json") loo_Rest.AllowHeaderFolding = 0 ls_ResponseBody = loo_Rest.FullRequestString("POST",loo_SbPath.GetAsString(),ls_RequestBody) if loo_Rest.LastMethodSuccess <> 1 then Write-Debug loo_Rest.LastErrorText destroy loo_JsonToken destroy loo_Rest destroy loo_SbAuth destroy loo_JsonRequest destroy loo_SbPath return end if // We should expect a 200 response if successful. if loo_Rest.ResponseStatusCode <> 200 then Write-Debug "Request Header: " Write-Debug loo_Rest.LastRequestHeader Write-Debug "----" Write-Debug "Response StatusCode = " + string(loo_Rest.ResponseStatusCode) Write-Debug "Response StatusLine: " + loo_Rest.ResponseStatusText Write-Debug "Response Header:" Write-Debug loo_Rest.ResponseHeader Write-Debug ls_ResponseBody destroy loo_JsonToken destroy loo_Rest destroy loo_SbAuth destroy loo_JsonRequest destroy loo_SbPath return end if loo_JsonResponse = create oleobject // Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0 li_rc = loo_JsonResponse.ConnectToNewObject("Chilkat.JsonObject") loo_JsonResponse.Load(ls_ResponseBody) loo_JsonResponse.EmitCompact = 0 Write-Debug loo_JsonResponse.Emit() Write-Debug "Success." // A sample JSON response: // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON // { // "Account": { // "Name": "Banana Republic", // "SubAccount": false, // "FullyQualifiedName": "Banana Republic", // "Active": true, // "Classification": "Liability", // "AccountType": "Credit Card", // "AccountSubType": "CreditCard", // "CurrentBalance": 0, // "CurrentBalanceWithSubAccounts": 0, // "CurrencyRef": { // "value": "USD", // "name": "United States Dollar" // }, // "domain": "QBO", // "sparse": false, // "Id": "97", // "SyncToken": "0", // "MetaData": { // "CreateTime": "2016-10-25T05:07:12-07:00", // "LastUpdatedTime": "2016-10-25T05:07:12-07:00" // } // }, // "time": "2016-10-25T05:07:11.714-07:00" // } destroy loo_JsonToken destroy loo_Rest destroy loo_SbAuth destroy loo_JsonRequest destroy loo_SbPath destroy loo_JsonResponse |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.