C
C
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 C Downloads
#include <C_CkHttp.h>
#include <C_CkJsonObject.h>
#include <C_CkHttpResponse.h>
void ChilkatSample(void)
{
BOOL success;
HCkHttp http;
HCkJsonObject json;
const char *url;
HCkHttpResponse resp;
HCkJsonObject jsonResp;
const char *country;
const char *address;
const char *resptext;
const char *city;
const char *acctid;
const char *respcode;
const char *defaultacct;
const char *accttype;
const char *token;
const char *license;
const char *respproc;
const char *phone;
const char *profileid;
const char *name;
const char *auoptout;
const char *postal;
const char *expiry;
const char *region;
const char *ssnl4;
const char *respstat;
success = FALSE;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http = CkHttp_Create();
CkHttp_putBasicAuth(http,TRUE);
CkHttp_putLogin(http,"API_USERNAME");
CkHttp_putPassword(http,"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 = CkJsonObject_Create();
CkJsonObject_UpdateString(json,"region","AK");
CkJsonObject_UpdateString(json,"phone","7778789999");
CkJsonObject_UpdateString(json,"accttype","VISA");
CkJsonObject_UpdateString(json,"postal","19090");
CkJsonObject_UpdateString(json,"ssnl4","3655");
CkJsonObject_UpdateString(json,"expiry","0214");
CkJsonObject_UpdateString(json,"city","ANYTOWN");
CkJsonObject_UpdateString(json,"country","US");
CkJsonObject_UpdateString(json,"address","123 MAIN STREET");
CkJsonObject_UpdateString(json,"merchid","MERCHANT_ID");
CkJsonObject_UpdateString(json,"name","TOM JONES");
CkJsonObject_UpdateString(json,"account","4444333322221111");
CkJsonObject_UpdateString(json,"license","123451254");
url = "https://<site>.cardconnect.com:<port>/cardconnect/rest/profile";
resp = CkHttpResponse_Create();
success = CkHttp_HttpStr(http,"PUT",url,CkJsonObject_emit(json),"utf-8","application/json",resp);
if (success == FALSE) {
printf("%s\n",CkHttp_lastErrorText(http));
CkHttp_Dispose(http);
CkJsonObject_Dispose(json);
CkHttpResponse_Dispose(resp);
return;
}
// 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.
printf("response status code = %d\n",CkHttpResponse_getStatusCode(resp));
jsonResp = CkJsonObject_Create();
CkJsonObject_Load(jsonResp,CkHttpResponse_bodyStr(resp));
CkJsonObject_putEmitCompact(jsonResp,FALSE);
printf("response JSON:\n");
printf("%s\n",CkJsonObject_emit(jsonResp));
// 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 = CkJsonObject_stringOf(jsonResp,"country");
address = CkJsonObject_stringOf(jsonResp,"address");
resptext = CkJsonObject_stringOf(jsonResp,"resptext");
city = CkJsonObject_stringOf(jsonResp,"city");
acctid = CkJsonObject_stringOf(jsonResp,"acctid");
respcode = CkJsonObject_stringOf(jsonResp,"respcode");
defaultacct = CkJsonObject_stringOf(jsonResp,"defaultacct");
accttype = CkJsonObject_stringOf(jsonResp,"accttype");
token = CkJsonObject_stringOf(jsonResp,"token");
license = CkJsonObject_stringOf(jsonResp,"license");
respproc = CkJsonObject_stringOf(jsonResp,"respproc");
phone = CkJsonObject_stringOf(jsonResp,"phone");
profileid = CkJsonObject_stringOf(jsonResp,"profileid");
name = CkJsonObject_stringOf(jsonResp,"name");
auoptout = CkJsonObject_stringOf(jsonResp,"auoptout");
postal = CkJsonObject_stringOf(jsonResp,"postal");
expiry = CkJsonObject_stringOf(jsonResp,"expiry");
region = CkJsonObject_stringOf(jsonResp,"region");
ssnl4 = CkJsonObject_stringOf(jsonResp,"ssnl4");
respstat = CkJsonObject_stringOf(jsonResp,"respstat");
CkHttp_Dispose(http);
CkJsonObject_Dispose(json);
CkHttpResponse_Dispose(resp);
CkJsonObject_Dispose(jsonResp);
}