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 GMail DraftDemonstrates how to create a new GMail draft email.
#include <C_CkEmailW.h> #include <C_CkStringBuilderW.h> #include <C_CkJsonObjectW.h> #include <C_CkHttpW.h> #include <C_CkHttpResponseW.h> void ChilkatSample(void) { BOOL success; HCkEmailW email; HCkStringBuilderW sbMime; HCkJsonObjectW json; HCkHttpW http; const wchar_t *url; HCkHttpResponseW resp; // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // Use the Chilkat Email API to create or load an email. email = CkEmailW_Create(); CkEmailW_putSubject(email,L"This is a test GMail email created using Chilkat."); CkEmailW_putCharset(email,L"utf-8"); CkEmailW_AddPlainTextAlternativeBody(email,L"This is a test"); CkEmailW_AddHtmlAlternativeBody(email,L"<html><body><p>This is a <b>test</b></body></html>"); // We'll need to get the full MIME of the email encoded to a base64url string. sbMime = CkStringBuilderW_Create(); CkEmailW_GetMimeSb(email,sbMime); CkStringBuilderW_Encode(sbMime,L"base64url",L"utf-8"); // The body of the HTTP request will be JSON.. json = CkJsonObjectW_Create(); CkJsonObjectW_UpdateSb(json,L"message.raw",sbMime); // Upload the email to GMail as a draft. http = CkHttpW_Create(); CkHttpW_putAuthToken(http,L"GMAIL-ACCESS-TOKEN"); url = L"https://www.googleapis.com/gmail/v1/users/me/drafts"; resp = CkHttpW_PostJson3(http,url,L"application/json",json); if (CkHttpW_getLastMethodSuccess(http) != TRUE) { wprintf(L"%s\n",CkHttpW_lastErrorText(http)); CkEmailW_Dispose(email); CkStringBuilderW_Dispose(sbMime); CkJsonObjectW_Dispose(json); CkHttpW_Dispose(http); return; } // A status code of 200 indicates success. wprintf(L"Response status code: %d\n",CkHttpResponseW_getStatusCode(resp)); wprintf(L"Response body:\n"); wprintf(L"%s\n",CkHttpResponseW_bodyStr(resp)); CkHttpResponseW_Dispose(resp); // The response body contains JSON. // Use the online tool at Generate JSON Parsing Code // to generate JSON parsing code. // A sample successful JSON response: // { // "id": "r-2607584557788895307", // "message": { // "id": "166f09932c662e93", // "threadId": "166f09932c662e93", // "labelIds": [ // "DRAFT" // ] // } // } CkEmailW_Dispose(email); CkStringBuilderW_Dispose(sbMime); CkJsonObjectW_Dispose(json); CkHttpW_Dispose(http); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.