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

Activix CRM Create a Communication

See more Activix CRM Examples

Create a communication. Returns the created communication.

Chilkat Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = false

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

    let http = CkoHttp()!

    http.authToken = "ACCESS_TOKEN"

    http.accept = "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

    let jsonRequestBody = CkoJsonObject()!
    jsonRequestBody.updateString(jsonPath: "lead_id", value: "LEAD_ID")
    jsonRequestBody.updateString(jsonPath: "method", value: "phone")
    jsonRequestBody.updateString(jsonPath: "type", value: "outgoing")
    jsonRequestBody.updateString(jsonPath: "call_status", value: "calling")

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

    let resp = CkoHttpResponse()!
    success = http.httpJson(verb: "POST", url: url, json: jsonRequestBody, contentType: "application/json", response: resp)
    if success == false {
        print("\(http.lastErrorText!)")
        return
    }

    print("Response Status Code: \(resp.statusCode.intValue)")

    let jsonResponse = CkoJsonObject()!
    jsonResponse.load(json: resp.bodyStr)
    jsonResponse.emitCompact = false
    print("\(jsonResponse.emit()!)")

    if resp.statusCode.intValue >= 300 {
        print("Failed.")
        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?
    var dataUpdated_at: String?
    var dataLead_id: Int
    var dataUser_id: Int
    var dataMethod: String?
    var dataType: String?
    var dataEmail_subject: String?
    var dataEmail_body: String?
    var dataEmail_client: String?
    var dataEmail_user: String?
    var dataCall_duration: String?
    var dataCall_phone: String?
    var dataCall_status: String?

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

}