Sample code for 30+ languages & platforms
C

WhatsApp - Download/Retrieve Media

Demonstrates how to download media previously uploaded to the WhatsApp Business API client

Chilkat C Downloads

C
#include <C_CkHttp.h>
#include <C_CkBinData.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkHttp http;
    HCkBinData bdResponseBody;
    int respStatusCode;

    success = FALSE;

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

    http = CkHttp_Create();

    //  Implements the following CURL command:

    //  curl -X GET \
    //    https://your-webapp-hostname:your-webapp-port/v1/media/4b5bf27b-8672-4d55-bc21-d096dc200d0f \
    //    -H 'Authorization: Bearer your-auth-token' \
    //    -o path/filename

    //  Use the following online tool to generate HTTP code from a CURL command
    //  Convert a cURL Command to HTTP Source Code

    //  Adds the "Authorization: Bearer your-auth-token" header.
    CkHttp_putAuthToken(http,"your-auth-token");

    bdResponseBody = CkBinData_Create();
    success = CkHttp_QuickGetBd(http,"https://your-webapp-hostname:your-webapp-port/v1/media/4b5bf27b-8672-4d55-bc21-d096dc200d0f",bdResponseBody);
    if (success == FALSE) {
        printf("%s\n",CkHttp_lastErrorText(http));
        CkHttp_Dispose(http);
        CkBinData_Dispose(bdResponseBody);
        return;
    }

    respStatusCode = CkHttp_getLastStatus(http);
    printf("response status code = %d\n",respStatusCode);
    printf("response header = %s\n",CkHttp_lastResponseHeader(http));

    if (respStatusCode != 200) {
        printf("Error response body:\n");
        printf("%s\n",CkBinData_getString(bdResponseBody,"utf-8"));
        CkHttp_Dispose(http);
        CkBinData_Dispose(bdResponseBody);
        return;
    }

    success = CkBinData_WriteFile(bdResponseBody,"path/filename");


    CkHttp_Dispose(http);
    CkBinData_Dispose(bdResponseBody);

    }