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
(Unicode C) Create a New GMail LabelDemonstrates how to create a new GMail label.
#include <C_CkHttpW.h> #include <C_CkJsonObjectW.h> #include <C_CkHttpResponseW.h> void ChilkatSample(void) { BOOL success; HCkHttpW http; const wchar_t *userId; HCkJsonObjectW json; const wchar_t *url; HCkHttpResponseW resp; // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. http = CkHttpW_Create(); CkHttpW_putAuthToken(http,L"GMAIL-ACCESS-TOKEN"); userId = L"me"; CkHttpW_SetUrlVar(http,L"userId",userId); // Create the JSON to be sent in the HTTP request body. // The name of the new label is "questions". json = CkJsonObjectW_Create(); CkJsonObjectW_UpdateString(json,L"name",L"questions"); CkJsonObjectW_UpdateString(json,L"labelListVisibility",L"labelShow"); CkJsonObjectW_UpdateString(json,L"messageListVisibility",L"show"); CkJsonObjectW_putEmitCompact(json,FALSE); wprintf(L"%s\n",CkJsonObjectW_emit(json)); // The JSON contains this: // { // "name": "questions", // "labelListVisibility": "labelShow", // "messageListVisibility": "show" // } url = L"https://www.googleapis.com/gmail/v1/users/{$userId}/labels"; resp = CkHttpW_PostJson3(http,url,L"application/json",json); if (CkHttpW_getLastMethodSuccess(http) != TRUE) { wprintf(L"%s\n",CkHttpW_lastErrorText(http)); CkHttpW_Dispose(http); CkJsonObjectW_Dispose(json); return; } wprintf(L"status = %d\n",CkHttpResponseW_getStatusCode(resp)); // A 200 response status indicate success. if (CkHttpResponseW_getStatusCode(resp) != 200) { wprintf(L"%s\n",CkHttpResponseW_bodyStr(resp)); wprintf(L"Failed.\n"); CkHttpResponseW_Dispose(resp); CkHttpW_Dispose(http); CkJsonObjectW_Dispose(json); return; } // A successful repsonse contains JSON that looks like this: // { // "id": "Label_43", // "name": "questions", // "messageListVisibility": "show", // "labelListVisibility": "labelShow" // } wprintf(L"response body:\n"); wprintf(L"%s\n",CkHttpResponseW_bodyStr(resp)); CkHttpResponseW_Dispose(resp); wprintf(L"GMail label created!\n"); CkHttpW_Dispose(http); CkJsonObjectW_Dispose(json); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.