Sample code for 30+ languages & platforms
Visual FoxPro

Activix CRM Upload a Recording

See more Activix CRM Examples

Upload a recording for an existing communication.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loReq
LOCAL lcPathToFileOnDisk
LOCAL loHttp
LOCAL loResp
LOCAL loJsonResponse

lnSuccess = 0

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

loReq = CreateObject('Chilkat.HttpRequest')

loReq.HttpVerb = "POST"
loReq.Path = "/api/v2/communications/COMMUNICATION_ID/recording"
loReq.ContentType = "multipart/form-data"

loReq.AddHeader("Accept","application/json")

lcPathToFileOnDisk = "qa_data/CantinaBand3.wav"
lnSuccess = loReq.AddFileForUpload("recording",lcPathToFileOnDisk)
IF (lnSuccess = 0) THEN
    ? loReq.LastErrorText
    RELEASE loReq
    CANCEL
ENDIF

loHttp = CreateObject('Chilkat.Http')
loHttp.AuthToken = "ACCESS_TOKEN"

loResp = CreateObject('Chilkat.HttpResponse')
lnSuccess = loHttp.HttpSReq("crm.activix.ca",443,1,loReq,loResp)
IF (lnSuccess = 0) THEN
    ? loHttp.LastErrorText
    RELEASE loReq
    RELEASE loHttp
    RELEASE loResp
    CANCEL
ENDIF

? "Response Status Code: " + STR(loResp.StatusCode)

loJsonResponse = CreateObject('Chilkat.JsonObject')
loJsonResponse.Load(loResp.BodyStr)
loJsonResponse.EmitCompact = 0
? loJsonResponse.Emit()

IF (loResp.StatusCode >= 300) THEN
    ? "Failed."
    RELEASE loReq
    RELEASE loHttp
    RELEASE loResp
    RELEASE loJsonResponse
    CANCEL
ENDIF

* Sample output...

* {
*   "message": "Recording uploaded successfully."
* }
* 

RELEASE loReq
RELEASE loHttp
RELEASE loResp
RELEASE loJsonResponse