Ruby
Ruby
CardConnect Create Profile
See more CardConnect Examples
Demonstrates 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
Chilkat Ruby Downloads
require 'chilkat'
success = false
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
http = Chilkat::CkHttp.new()
http.put_BasicAuth(true)
http.put_Login("API_USERNAME")
http.put_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",
# }
json = Chilkat::CkJsonObject.new()
json.UpdateString("region","AK")
json.UpdateString("phone","7778789999")
json.UpdateString("accttype","VISA")
json.UpdateString("postal","19090")
json.UpdateString("ssnl4","3655")
json.UpdateString("expiry","0214")
json.UpdateString("city","ANYTOWN")
json.UpdateString("country","US")
json.UpdateString("address","123 MAIN STREET")
json.UpdateString("merchid","MERCHANT_ID")
json.UpdateString("name","TOM JONES")
json.UpdateString("account","4444333322221111")
json.UpdateString("license","123451254")
url = "https://<site>.cardconnect.com:<port>/cardconnect/rest/profile"
resp = Chilkat::CkHttpResponse.new()
success = http.HttpStr("PUT",url,json.emit(),"utf-8","application/json",resp)
if (success == false)
print http.lastErrorText() + "\n";
exit
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.
print "response status code = " + resp.get_StatusCode().to_s() + "\n";
jsonResp = Chilkat::CkJsonObject.new()
jsonResp.Load(resp.bodyStr())
jsonResp.put_EmitCompact(false)
print "response JSON:" + "\n";
print jsonResp.emit() + "\n";
# 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
country = jsonResp.stringOf("country")
address = jsonResp.stringOf("address")
resptext = jsonResp.stringOf("resptext")
city = jsonResp.stringOf("city")
acctid = jsonResp.stringOf("acctid")
respcode = jsonResp.stringOf("respcode")
defaultacct = jsonResp.stringOf("defaultacct")
accttype = jsonResp.stringOf("accttype")
token = jsonResp.stringOf("token")
license = jsonResp.stringOf("license")
respproc = jsonResp.stringOf("respproc")
phone = jsonResp.stringOf("phone")
profileid = jsonResp.stringOf("profileid")
name = jsonResp.stringOf("name")
auoptout = jsonResp.stringOf("auoptout")
postal = jsonResp.stringOf("postal")
expiry = jsonResp.stringOf("expiry")
region = jsonResp.stringOf("region")
ssnl4 = jsonResp.stringOf("ssnl4")
respstat = jsonResp.stringOf("respstat")