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

Activix CRM Create a Communication

See more Activix CRM Examples

Create a communication. Returns the created communication.

Chilkat Go Downloads

Go
    success := false

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

    http := chilkat.NewHttp()

    http.SetAuthToken("ACCESS_TOKEN")

    http.SetAccept("application/json")

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

    //  {
    //    "lead_id": "LEAD_ID",
    //    "method": "phone",
    //    "type": "outgoing",
    //    "call_status": "calling"
    //  }

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

    jsonRequestBody := chilkat.NewJsonObject()
    jsonRequestBody.UpdateString("lead_id","LEAD_ID")
    jsonRequestBody.UpdateString("method","phone")
    jsonRequestBody.UpdateString("type","outgoing")
    jsonRequestBody.UpdateString("call_status","calling")

    url := "https://crm.activix.ca/api/v2/communications"

    resp := chilkat.NewHttpResponse()
    success = http.HttpJson("POST",url,jsonRequestBody,"application/json",resp)
    if success == false {
        fmt.Println(http.LastErrorText())
        http.DisposeHttp()
        jsonRequestBody.DisposeJsonObject()
        resp.DisposeHttpResponse()
        return
    }

    fmt.Println("Response Status Code: ", resp.StatusCode())

    jsonResponse := chilkat.NewJsonObject()
    jsonResponse.Load(resp.BodyStr())
    jsonResponse.SetEmitCompact(false)
    fmt.Println(*jsonResponse.Emit())

    if resp.StatusCode() >= 300 {
        fmt.Println("Failed.")
        http.DisposeHttp()
        jsonRequestBody.DisposeJsonObject()
        resp.DisposeHttpResponse()
        jsonResponse.DisposeJsonObject()
        return
    }

    //  Sample output...
    //  (See the parsing code below..)
    //  
    //  Use the this online tool to generate parsing code from sample JSON: 
    //  Generate Parsing Code from JSON

    //  {
    //    "data": {
    //      "id": 5411998,
    //      "created_at": "2019-06-10T13:01:40+00:00",
    //      "updated_at": "2019-06-10T13:01:40+00:00",
    //      "lead_id": 7135833,
    //      "user_id": 13705,
    //      "method": "phone",
    //      "type": "outgoing",
    //      "email_subject": null,
    //      "email_body": null,
    //      "email_client": null,
    //      "email_user": null,
    //      "call_duration": null,
    //      "call_phone": null,
    //      "call_status": "calling"
    //    }
    //  }
    //  

    var dataId int
    var dataCreated_at *string = new(string)
    var dataUpdated_at *string = new(string)
    var dataLead_id int
    var dataUser_id int
    var dataMethod *string = new(string)
    var dataType *string = new(string)
    var dataEmail_subject *string = new(string)
    var dataEmail_body *string = new(string)
    var dataEmail_client *string = new(string)
    var dataEmail_user *string = new(string)
    var dataCall_duration *string = new(string)
    var dataCall_phone *string = new(string)
    var dataCall_status *string = new(string)

    dataId = jsonResponse.IntOf("data.id")
    dataCreated_at = jsonResponse.StringOf("data.created_at")
    dataUpdated_at = jsonResponse.StringOf("data.updated_at")
    dataLead_id = jsonResponse.IntOf("data.lead_id")
    dataUser_id = jsonResponse.IntOf("data.user_id")
    dataMethod = jsonResponse.StringOf("data.method")
    dataType = jsonResponse.StringOf("data.type")
    dataEmail_subject = jsonResponse.StringOf("data.email_subject")
    dataEmail_body = jsonResponse.StringOf("data.email_body")
    dataEmail_client = jsonResponse.StringOf("data.email_client")
    dataEmail_user = jsonResponse.StringOf("data.email_user")
    dataCall_duration = jsonResponse.StringOf("data.call_duration")
    dataCall_phone = jsonResponse.StringOf("data.call_phone")
    dataCall_status = jsonResponse.StringOf("data.call_status")

    http.DisposeHttp()
    jsonRequestBody.DisposeJsonObject()
    resp.DisposeHttpResponse()
    jsonResponse.DisposeJsonObject()