Sample code for 30+ languages & platforms
C

Permanently Delete a Specific GMail Message

See more GMail REST API Examples

Immediately and permanently deletes the specified message. This operation cannot be undone. (This is not the same as moving a message to Trash.)

Chilkat C Downloads

C
#include <C_CkHttp.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkHttp http;
    const char *id;
    const char *userId;
    const char *url;
    const char *responseStr;

    success = FALSE;

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

    http = CkHttp_Create();
    CkHttp_putAuthToken(http,"GMAIL-ACCESS-TOKEN");

    // The id of the GMail message to delete.
    id = "1669cc9a926bb8c1";
    userId = "me";

    CkHttp_SetUrlVar(http,"userId","me");
    CkHttp_SetUrlVar(http,"id",id);

    // Delete the email.
    url = "https://www.googleapis.com/gmail/v1/users/{$userId}/messages/{$id}";
    responseStr = CkHttp_quickDeleteStr(http,url);
    if (CkHttp_getLastMethodSuccess(http) != TRUE) {
        printf("%s\n",CkHttp_lastErrorText(http));
        CkHttp_Dispose(http);
        return;
    }

    printf("status = %d\n",CkHttp_getLastStatus(http));

    // A 204 response indicate success.
    // It is common for HTTP DELETE operations to respond with a 204 status code with an empty body for success.
    // You'll find many REST APIs follow this custom..
    if (CkHttp_getLastStatus(http) != 204) {
        printf("%s\n",responseStr);
        printf("Failed.\n");
        CkHttp_Dispose(http);
        return;
    }

    printf("Message deleted!\n");


    CkHttp_Dispose(http);

    }