Sample code for 30+ languages & platforms
Xbase++ Requires Chilkat v11.0.0+

SugarCRM Create a Record

See more SugarCRM Examples

Submit a record to the Sugar instance using the / endpoint. In this example we are going to create an Account record with a Name of 'Test Record' and an email of 'test@sugar.com'.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oHttp
LOCAL oJson
LOCAL oResp
LOCAL oSbResponseBody
LOCAL oJResp
LOCAL nRespStatusCode
LOCAL cId
LOCAL cName
LOCAL cDate_entered
LOCAL cDate_modified
LOCAL cModified_user_id
LOCAL cModified_by_name
LOCAL cModified_user_linkFull_name
LOCAL cModified_user_linkId
LOCAL cModified_user_link_aclDelete
LOCAL cModified_user_link_acl_hash
LOCAL cCreated_by
LOCAL cCreated_by_name
LOCAL cCreated_by_linkFull_name
LOCAL cCreated_by_linkId
LOCAL cCreated_by_link_aclDelete
LOCAL cCreated_by_link_acl_hash
LOCAL cDescription
LOCAL nDeleted
LOCAL cFacebook
LOCAL cTwitter
LOCAL cGoogleplus
LOCAL cAccount_type
LOCAL cIndustry
LOCAL cAnnual_revenue
LOCAL cPhone_fax
LOCAL cBilling_address_street
LOCAL cBilling_address_street_2
LOCAL cBilling_address_street_3
LOCAL cBilling_address_street_4
LOCAL cBilling_address_city
LOCAL cBilling_address_state
LOCAL cBilling_address_postalcode
LOCAL cBilling_address_country
LOCAL cRating
LOCAL cPhone_office
LOCAL cPhone_alternate
LOCAL cWebsite
LOCAL cOwnership
LOCAL cEmployees
LOCAL cTicker_symbol
LOCAL cShipping_address_street
LOCAL cShipping_address_street_2
LOCAL cShipping_address_street_3
LOCAL cShipping_address_street_4
LOCAL cShipping_address_city
LOCAL cShipping_address_state
LOCAL cShipping_address_postalcode
LOCAL cShipping_address_country
LOCAL cParent_id
LOCAL cSic_code
LOCAL cDuns_num
LOCAL cParent_name
LOCAL cMember_ofName
LOCAL cMember_ofId
LOCAL cMember_of_acl_hash
LOCAL cCampaign_id
LOCAL cCampaign_name
LOCAL cCampaign_accountsName
LOCAL cCampaign_accountsId
LOCAL cCampaign_accounts_acl_hash
LOCAL nFollowing
LOCAL nMy_favorite
LOCAL cAssigned_user_id
LOCAL cAssigned_user_name
LOCAL cAssigned_user_linkFull_name
LOCAL cAssigned_user_linkId
LOCAL cAssigned_user_link_acl_hash
LOCAL cTeam_count
LOCAL cTeam_count_linkTeam_count
LOCAL cTeam_count_linkId
LOCAL cTeam_count_link_acl_hash
LOCAL cEmail1
LOCAL cEmail2
LOCAL nInvalid_email
LOCAL nEmail_opt_out
LOCAL cEmail_addresses_non_primary
LOCAL cV_module
LOCAL i
LOCAL nCount_i
LOCAL nId_int
LOCAL cName_2
LOCAL nPrimary
LOCAL cEmail_address
LOCAL nOpt_out
LOCAL nPrimary_address
LOCAL nReply_to_address

nSuccess := 0

//  This example assumes the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

oHttp := CreateObject("Chilkat.Http")

//  Implements the following CURL command:

//  curl -X POST -H OAuth-Token:<access_token> -H Cache-Control:no-cache -d '{ 
//     "name":"Test Record",
//     "email1":"test@sugar.com"
//  }' http://<site_url>/rest/v10/Accounts

//  Use this online tool to generate code from sample JSON:
//  Generate Code to Create JSON

//  The following JSON is sent in the request body.

//  {
//    "name": "Test Record",
//    "email1": "test@sugar.com"
//  }

oJson := CreateObject("Chilkat.JsonObject")
oJson:UpdateString("name", "Test Record")
oJson:UpdateString("email1", "test@sugar.com")

oHttp:SetRequestHeader("Cache-Control", "no-cache")
oHttp:SetRequestHeader("OAuth-Token", "<access_token>")

oResp := CreateObject("Chilkat.HttpResponse")
nSuccess := oHttp:HttpJson("POST", "http://<site_url>/rest/v10/Accounts", oJson, "application/json", oResp)
IF (nSuccess == 0)
    ? oHttp:LastErrorText
    oHttp:destroy()
    oJson:destroy()
    oResp:destroy()
    RETURN
ENDIF

oSbResponseBody := CreateObject("Chilkat.StringBuilder")
oResp:GetBodySb(oSbResponseBody)
oJResp := CreateObject("Chilkat.JsonObject")
oJResp:LoadSb(oSbResponseBody)
oJResp:EmitCompact := 0

? "Response Body:"
? oJResp:Emit()

nRespStatusCode := oResp:StatusCode
? "Response Status Code = " + Str(nRespStatusCode)
IF (nRespStatusCode >= 400)
    ? "Response Header:"
    ? oResp:Header
    ? "Failed."
    oHttp:destroy()
    oJson:destroy()
    oResp:destroy()
    oSbResponseBody:destroy()
    oJResp:destroy()
    RETURN
ENDIF

//  Sample JSON response:
//  (Sample code for parsing the JSON response is shown below)

//  {
//    "id": "ab2222df-73da-0e92-6887-5705428f4d68",
//    "name": "Test Record",
//    "date_entered": "2016-04-06T13:07:41-04:00",
//    "date_modified": "2016-04-06T13:07:41-04:00",
//    "modified_user_id": "1",
//    "modified_by_name": "Administrator",
//    "modified_user_link": {
//      "full_name": "Administrator",
//      "id": "1",
//      "_acl": {
//        "fields": [
//        ],
//        "delete": "no",
//        "_hash": "8e11bf9be8f04daddee9d08d44ea891e"
//      }
//    },
//    "created_by": "1",
//    "created_by_name": "Administrator",
//    "created_by_link": {
//      "full_name": "Administrator",
//      "id": "1",
//      "_acl": {
//        "fields": [
//        ],
//        "delete": "no",
//        "_hash": "8e11bf9be8f04daddee9d08d44ea891e"
//      }
//    },
//    "description": "",
//    "deleted": false,
//    "facebook": "",
//    "twitter": "",
//    "googleplus": "",
//    "account_type": "",
//    "industry": "",
//    "annual_revenue": "",
//    "phone_fax": "",
//    "billing_address_street": "",
//    "billing_address_street_2": "",
//    "billing_address_street_3": "",
//    "billing_address_street_4": "",
//    "billing_address_city": "",
//    "billing_address_state": "",
//    "billing_address_postalcode": "",
//    "billing_address_country": "",
//    "rating": "",
//    "phone_office": "",
//    "phone_alternate": "",
//    "website": "",
//    "ownership": "",
//    "employees": "",
//    "ticker_symbol": "",
//    "shipping_address_street": "",
//    "shipping_address_street_2": "",
//    "shipping_address_street_3": "",
//    "shipping_address_street_4": "",
//    "shipping_address_city": "",
//    "shipping_address_state": "",
//    "shipping_address_postalcode": "",
//    "shipping_address_country": "",
//    "parent_id": "",
//    "sic_code": "",
//    "duns_num": "",
//    "parent_name": "",
//    "member_of": {
//      "name": "",
//      "id": "",
//      "_acl": {
//        "fields": [
//        ],
//        "_hash": "654d337e0e912edaa00dbb0fb3dc3c17"
//      }
//    },
//    "campaign_id": "",
//    "campaign_name": "",
//    "campaign_accounts": {
//      "name": "",
//      "id": "",
//      "_acl": {
//        "fields": [
//        ],
//        "_hash": "654d337e0e912edaa00dbb0fb3dc3c17"
//      }
//    },
//    "following": true,
//    "my_favorite": false,
//    "tag": [
//    ],
//    "assigned_user_id": "",
//    "assigned_user_name": "",
//    "assigned_user_link": {
//      "full_name": "",
//      "id": "",
//      "_acl": {
//        "fields": [
//        ],
//        "_hash": "654d337e0e912edaa00dbb0fb3dc3c17"
//      }
//    },
//    "team_count": "",
//    "team_count_link": {
//      "team_count": "",
//      "id": "1",
//      "_acl": {
//        "fields": [
//        ],
//        "_hash": "654d337e0e912edaa00dbb0fb3dc3c17"
//      }
//    },
//    "team_name": [
//      {
//        "id": 1,
//        "name": "Global",
//        "name_2": "",
//        "primary": true
//      }
//    ],
//    "email": [
//      {
//        "email_address": "test@sugar.com",
//        "invalid_email": false,
//        "opt_out": false,
//        "primary_address": true,
//        "reply_to_address": false
//      }
//    ],
//    "email1": "test@sugar.com",
//    "email2": "",
//    "invalid_email": false,
//    "email_opt_out": false,
//    "email_addresses_non_primary": "",
//    "_acl": {
//      "fields": {}
//    },
//    "_module": "Accounts"
//  }

//  Sample code for parsing the JSON response...
//  Use the following online tool to generate parsing code from sample JSON:
//  Generate Parsing Code from JSON

cId := oJResp:StringOf("id")
cName := oJResp:StringOf("name")
cDate_entered := oJResp:StringOf("date_entered")
cDate_modified := oJResp:StringOf("date_modified")
cModified_user_id := oJResp:StringOf("modified_user_id")
cModified_by_name := oJResp:StringOf("modified_by_name")
cModified_user_linkFull_name := oJResp:StringOf("modified_user_link.full_name")
cModified_user_linkId := oJResp:StringOf("modified_user_link.id")
cModified_user_link_aclDelete := oJResp:StringOf("modified_user_link._acl.delete")
cModified_user_link_acl_hash := oJResp:StringOf("modified_user_link._acl._hash")
cCreated_by := oJResp:StringOf("created_by")
cCreated_by_name := oJResp:StringOf("created_by_name")
cCreated_by_linkFull_name := oJResp:StringOf("created_by_link.full_name")
cCreated_by_linkId := oJResp:StringOf("created_by_link.id")
cCreated_by_link_aclDelete := oJResp:StringOf("created_by_link._acl.delete")
cCreated_by_link_acl_hash := oJResp:StringOf("created_by_link._acl._hash")
cDescription := oJResp:StringOf("description")
nDeleted := oJResp:BoolOf("deleted")
cFacebook := oJResp:StringOf("facebook")
cTwitter := oJResp:StringOf("twitter")
cGoogleplus := oJResp:StringOf("googleplus")
cAccount_type := oJResp:StringOf("account_type")
cIndustry := oJResp:StringOf("industry")
cAnnual_revenue := oJResp:StringOf("annual_revenue")
cPhone_fax := oJResp:StringOf("phone_fax")
cBilling_address_street := oJResp:StringOf("billing_address_street")
cBilling_address_street_2 := oJResp:StringOf("billing_address_street_2")
cBilling_address_street_3 := oJResp:StringOf("billing_address_street_3")
cBilling_address_street_4 := oJResp:StringOf("billing_address_street_4")
cBilling_address_city := oJResp:StringOf("billing_address_city")
cBilling_address_state := oJResp:StringOf("billing_address_state")
cBilling_address_postalcode := oJResp:StringOf("billing_address_postalcode")
cBilling_address_country := oJResp:StringOf("billing_address_country")
cRating := oJResp:StringOf("rating")
cPhone_office := oJResp:StringOf("phone_office")
cPhone_alternate := oJResp:StringOf("phone_alternate")
cWebsite := oJResp:StringOf("website")
cOwnership := oJResp:StringOf("ownership")
cEmployees := oJResp:StringOf("employees")
cTicker_symbol := oJResp:StringOf("ticker_symbol")
cShipping_address_street := oJResp:StringOf("shipping_address_street")
cShipping_address_street_2 := oJResp:StringOf("shipping_address_street_2")
cShipping_address_street_3 := oJResp:StringOf("shipping_address_street_3")
cShipping_address_street_4 := oJResp:StringOf("shipping_address_street_4")
cShipping_address_city := oJResp:StringOf("shipping_address_city")
cShipping_address_state := oJResp:StringOf("shipping_address_state")
cShipping_address_postalcode := oJResp:StringOf("shipping_address_postalcode")
cShipping_address_country := oJResp:StringOf("shipping_address_country")
cParent_id := oJResp:StringOf("parent_id")
cSic_code := oJResp:StringOf("sic_code")
cDuns_num := oJResp:StringOf("duns_num")
cParent_name := oJResp:StringOf("parent_name")
cMember_ofName := oJResp:StringOf("member_of.name")
cMember_ofId := oJResp:StringOf("member_of.id")
cMember_of_acl_hash := oJResp:StringOf("member_of._acl._hash")
cCampaign_id := oJResp:StringOf("campaign_id")
cCampaign_name := oJResp:StringOf("campaign_name")
cCampaign_accountsName := oJResp:StringOf("campaign_accounts.name")
cCampaign_accountsId := oJResp:StringOf("campaign_accounts.id")
cCampaign_accounts_acl_hash := oJResp:StringOf("campaign_accounts._acl._hash")
nFollowing := oJResp:BoolOf("following")
nMy_favorite := oJResp:BoolOf("my_favorite")
cAssigned_user_id := oJResp:StringOf("assigned_user_id")
cAssigned_user_name := oJResp:StringOf("assigned_user_name")
cAssigned_user_linkFull_name := oJResp:StringOf("assigned_user_link.full_name")
cAssigned_user_linkId := oJResp:StringOf("assigned_user_link.id")
cAssigned_user_link_acl_hash := oJResp:StringOf("assigned_user_link._acl._hash")
cTeam_count := oJResp:StringOf("team_count")
cTeam_count_linkTeam_count := oJResp:StringOf("team_count_link.team_count")
cTeam_count_linkId := oJResp:StringOf("team_count_link.id")
cTeam_count_link_acl_hash := oJResp:StringOf("team_count_link._acl._hash")
cEmail1 := oJResp:StringOf("email1")
cEmail2 := oJResp:StringOf("email2")
nInvalid_email := oJResp:BoolOf("invalid_email")
nEmail_opt_out := oJResp:BoolOf("email_opt_out")
cEmail_addresses_non_primary := oJResp:StringOf("email_addresses_non_primary")
cV_module := oJResp:StringOf("_module")
i := 0
nCount_i := oJResp:SizeOfArray("modified_user_link._acl.fields")
DO WHILE i < nCount_i
    oJResp:I := i
    i := i + 1
ENDDO
i := 0
nCount_i := oJResp:SizeOfArray("created_by_link._acl.fields")
DO WHILE i < nCount_i
    oJResp:I := i
    i := i + 1
ENDDO
i := 0
nCount_i := oJResp:SizeOfArray("member_of._acl.fields")
DO WHILE i < nCount_i
    oJResp:I := i
    i := i + 1
ENDDO
i := 0
nCount_i := oJResp:SizeOfArray("campaign_accounts._acl.fields")
DO WHILE i < nCount_i
    oJResp:I := i
    i := i + 1
ENDDO
i := 0
nCount_i := oJResp:SizeOfArray("tag")
DO WHILE i < nCount_i
    oJResp:I := i
    i := i + 1
ENDDO
i := 0
nCount_i := oJResp:SizeOfArray("assigned_user_link._acl.fields")
DO WHILE i < nCount_i
    oJResp:I := i
    i := i + 1
ENDDO
i := 0
nCount_i := oJResp:SizeOfArray("team_count_link._acl.fields")
DO WHILE i < nCount_i
    oJResp:I := i
    i := i + 1
ENDDO
i := 0
nCount_i := oJResp:SizeOfArray("team_name")
DO WHILE i < nCount_i
    oJResp:I := i
    nId_int := oJResp:IntOf("team_name[i].id")
    cName := oJResp:StringOf("team_name[i].name")
    cName_2 := oJResp:StringOf("team_name[i].name_2")
    nPrimary := oJResp:BoolOf("team_name[i].primary")
    i := i + 1
ENDDO
i := 0
nCount_i := oJResp:SizeOfArray("email")
DO WHILE i < nCount_i
    oJResp:I := i
    cEmail_address := oJResp:StringOf("email[i].email_address")
    nInvalid_email := oJResp:BoolOf("email[i].invalid_email")
    nOpt_out := oJResp:BoolOf("email[i].opt_out")
    nPrimary_address := oJResp:BoolOf("email[i].primary_address")
    nReply_to_address := oJResp:BoolOf("email[i].reply_to_address")
    i := i + 1
ENDDO

oHttp:destroy()
oJson:destroy()
oResp:destroy()
oSbResponseBody:destroy()
oJResp:destroy()