Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PureBasic) Activix CRM Create a CommunicationCreate a communication. Returns the created communication. For more information, see https://docs.crm.activix.ca/api/resources/communication
IncludeFile "CkHttpResponse.pb" IncludeFile "CkHttp.pb" IncludeFile "CkJsonObject.pb" Procedure ChilkatExample() ; This example requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. http.i = CkHttp::ckCreate() If http.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkHttp::setCkAuthToken(http, "ACCESS_TOKEN") CkHttp::setCkAccept(http, "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.i = CkJsonObject::ckCreate() If jsonRequestBody.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkJsonObject::ckUpdateString(jsonRequestBody,"lead_id","LEAD_ID") CkJsonObject::ckUpdateString(jsonRequestBody,"method","phone") CkJsonObject::ckUpdateString(jsonRequestBody,"type","outgoing") CkJsonObject::ckUpdateString(jsonRequestBody,"call_status","calling") url.s = "https://crm.activix.ca/api/v2/communications" resp.i = CkHttp::ckPText(http,"POST",url,CkJsonObject::ckEmit(jsonRequestBody),"utf-8","application/json",0,0) If CkHttp::ckLastMethodSuccess(http) <> 1 Debug CkHttp::ckLastErrorText(http) CkHttp::ckDispose(http) CkJsonObject::ckDispose(jsonRequestBody) ProcedureReturn EndIf Debug "Response Status Code: " + Str(CkHttpResponse::ckStatusCode(resp)) jsonResponse.i = CkJsonObject::ckCreate() If jsonResponse.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkJsonObject::ckLoad(jsonResponse,CkHttpResponse::ckBodyStr(resp)) CkJsonObject::setCkEmitCompact(jsonResponse, 0) Debug CkJsonObject::ckEmit(jsonResponse) If CkHttpResponse::ckStatusCode(resp) >= 300 Debug "Failed." CkHttpResponse::ckDispose(resp) CkHttp::ckDispose(http) CkJsonObject::ckDispose(jsonRequestBody) CkJsonObject::ckDispose(jsonResponse) ProcedureReturn EndIf CkHttpResponse::ckDispose(resp) ; 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" ; } ; } ; dataId.i dataCreated_at.s dataUpdated_at.s dataLead_id.i dataUser_id.i dataMethod.s dataType.s dataEmail_subject.s dataEmail_body.s dataEmail_client.s dataEmail_user.s dataCall_duration.s dataCall_phone.s dataCall_status.s dataId = CkJsonObject::ckIntOf(jsonResponse,"data.id") dataCreated_at = CkJsonObject::ckStringOf(jsonResponse,"data.created_at") dataUpdated_at = CkJsonObject::ckStringOf(jsonResponse,"data.updated_at") dataLead_id = CkJsonObject::ckIntOf(jsonResponse,"data.lead_id") dataUser_id = CkJsonObject::ckIntOf(jsonResponse,"data.user_id") dataMethod = CkJsonObject::ckStringOf(jsonResponse,"data.method") dataType = CkJsonObject::ckStringOf(jsonResponse,"data.type") dataEmail_subject = CkJsonObject::ckStringOf(jsonResponse,"data.email_subject") dataEmail_body = CkJsonObject::ckStringOf(jsonResponse,"data.email_body") dataEmail_client = CkJsonObject::ckStringOf(jsonResponse,"data.email_client") dataEmail_user = CkJsonObject::ckStringOf(jsonResponse,"data.email_user") dataCall_duration = CkJsonObject::ckStringOf(jsonResponse,"data.call_duration") dataCall_phone = CkJsonObject::ckStringOf(jsonResponse,"data.call_phone") dataCall_status = CkJsonObject::ckStringOf(jsonResponse,"data.call_status") CkHttp::ckDispose(http) CkJsonObject::ckDispose(jsonRequestBody) CkJsonObject::ckDispose(jsonResponse) ProcedureReturn EndProcedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.