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
(SQL Server) CardConnect Create ProfileDemonstrates how to create a profile. A PUT call to the profile endpoint creates a new profile or adds a new account to an existing profile. ... See https://developer.cardconnect.com/cardconnect-api?lang=json#create-update-profile-request
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls. -- CREATE PROCEDURE ChilkatSample AS BEGIN DECLARE @hr int DECLARE @iTmp0 int -- Important: Do not use nvarchar(max). See the warning about using nvarchar(max). DECLARE @sTmp0 nvarchar(4000) -- This example assumes the Chilkat API to have been previously unlocked. -- See Global Unlock Sample for sample code. DECLARE @http int -- Use "Chilkat_9_5_0.Http" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.Http', @http OUT IF @hr <> 0 BEGIN PRINT 'Failed to create ActiveX component' RETURN END DECLARE @success int EXEC sp_OASetProperty @http, 'BasicAuth', 1 EXEC sp_OASetProperty @http, 'Login', 'API_USERNAME' EXEC sp_OASetProperty @http, 'Password', 'API_PASSWORD' -- Build and send the following JSON: -- { -- "region": "AK", -- "phone": "7778789999", -- "accttype": "VISA", -- "postal": "19090", -- "ssnl4": "3655", -- "expiry": "0214", -- "city": "ANYTOWN", -- "country": "US", -- "address": "123 MAIN STREET", -- "merchid": "496400000840", -- "name": "TOM JONES", -- "account": "4444333322221111", -- "license": "123451254", -- } DECLARE @json int -- Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @json OUT EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'region', 'AK' EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'phone', '7778789999' EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'accttype', 'VISA' EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'postal', '19090' EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ssnl4', '3655' EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'expiry', '0214' EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'city', 'ANYTOWN' EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'country', 'US' EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'address', '123 MAIN STREET' EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'merchid', 'MERCHANT_ID' EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'name', 'TOM JONES' EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'account', '4444333322221111' EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'license', '123451254' DECLARE @url nvarchar(4000) SELECT @url = 'https://<site>.cardconnect.com:<port>/cardconnect/rest/profile' DECLARE @responseStr nvarchar(4000) EXEC sp_OAMethod @json, 'Emit', @sTmp0 OUT EXEC sp_OAMethod @http, 'PutText', @responseStr OUT, @url, @sTmp0, 'utf-8', 'application/json', 0, 0 EXEC sp_OAGetProperty @http, 'LastMethodSuccess', @iTmp0 OUT IF @iTmp0 = 0 BEGIN EXEC sp_OAGetProperty @http, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 EXEC @hr = sp_OADestroy @http EXEC @hr = sp_OADestroy @json RETURN END -- A response status of 200 indicates potential success. The JSON response body -- must be examined to determine if it was truly successful or an error. EXEC sp_OAGetProperty @http, 'LastStatus', @iTmp0 OUT PRINT 'response status code = ' + @iTmp0 DECLARE @jsonResp int -- Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @jsonResp OUT EXEC sp_OAMethod @jsonResp, 'Load', @success OUT, @responseStr EXEC sp_OASetProperty @jsonResp, 'EmitCompact', 0 PRINT 'response JSON:' EXEC sp_OAMethod @jsonResp, 'Emit', @sTmp0 OUT PRINT @sTmp0 -- A successful response looks like this: -- { -- "country": "US", -- "address": "123 MAIN STREET", -- "resptext": "Profile Saved", -- "city": "ANYTOWN", -- "acctid": "1", -- "respcode": "09", -- "defaultacct": "Y", -- "accttype": "VISA", -- "token": "9441149619831111", -- "license": "123451254", -- "respproc": "PPS", -- "phone": "7778789999", -- "profileid": "16392957457306633141", -- "name": "TOM JONES", -- "auoptout": "N", -- "postal": "19090", -- "expiry": "0214", -- "region": "AK", -- "ssnl4": "3655", -- "respstat": "A" -- } -- Use this online tool to generate parsing code from sample JSON: -- Generate Parsing Code from JSON DECLARE @country nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @country OUT, 'country' DECLARE @address nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @address OUT, 'address' DECLARE @resptext nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @resptext OUT, 'resptext' DECLARE @city nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @city OUT, 'city' DECLARE @acctid nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @acctid OUT, 'acctid' DECLARE @respcode nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @respcode OUT, 'respcode' DECLARE @defaultacct nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @defaultacct OUT, 'defaultacct' DECLARE @accttype nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @accttype OUT, 'accttype' DECLARE @token nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @token OUT, 'token' DECLARE @license nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @license OUT, 'license' DECLARE @respproc nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @respproc OUT, 'respproc' DECLARE @phone nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @phone OUT, 'phone' DECLARE @profileid nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @profileid OUT, 'profileid' DECLARE @name nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @name OUT, 'name' DECLARE @auoptout nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @auoptout OUT, 'auoptout' DECLARE @postal nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @postal OUT, 'postal' DECLARE @expiry nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @expiry OUT, 'expiry' DECLARE @region nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @region OUT, 'region' DECLARE @ssnl4 nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @ssnl4 OUT, 'ssnl4' DECLARE @respstat nvarchar(4000) EXEC sp_OAMethod @jsonResp, 'StringOf', @respstat OUT, 'respstat' EXEC @hr = sp_OADestroy @http EXEC @hr = sp_OADestroy @json EXEC @hr = sp_OADestroy @jsonResp END GO |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.