Sample code for 30+ languages & platforms
Swift

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")

}