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
(Delphi DLL) Create a New GMail LabelDemonstrates how to create a new GMail label.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Http, HttpResponse, JsonObject; ... procedure TForm1.Button1Click(Sender: TObject); var success: Boolean; http: HCkHttp; userId: PWideChar; json: HCkJsonObject; url: PWideChar; resp: HCkHttpResponse; begin // 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'); userId := 'me'; CkHttp_SetUrlVar(http,'userId',userId); // Create the JSON to be sent in the HTTP request body. // The name of the new label is "questions". json := CkJsonObject_Create(); CkJsonObject_UpdateString(json,'name','questions'); CkJsonObject_UpdateString(json,'labelListVisibility','labelShow'); CkJsonObject_UpdateString(json,'messageListVisibility','show'); CkJsonObject_putEmitCompact(json,False); Memo1.Lines.Add(CkJsonObject__emit(json)); // The JSON contains this: // { // "name": "questions", // "labelListVisibility": "labelShow", // "messageListVisibility": "show" // } url := 'https://www.googleapis.com/gmail/v1/users/{$userId}/labels'; resp := CkHttp_PostJson3(http,url,'application/json',json); if (CkHttp_getLastMethodSuccess(http) <> True) then begin Memo1.Lines.Add(CkHttp__lastErrorText(http)); Exit; end; Memo1.Lines.Add('status = ' + IntToStr(CkHttpResponse_getStatusCode(resp))); // A 200 response status indicate success. if (CkHttpResponse_getStatusCode(resp) <> 200) then begin Memo1.Lines.Add(CkHttpResponse__bodyStr(resp)); Memo1.Lines.Add('Failed.'); CkHttpResponse_Dispose(resp); Exit; end; // A successful repsonse contains JSON that looks like this: // { // "id": "Label_43", // "name": "questions", // "messageListVisibility": "show", // "labelListVisibility": "labelShow" // } Memo1.Lines.Add('response body:'); Memo1.Lines.Add(CkHttpResponse__bodyStr(resp)); CkHttpResponse_Dispose(resp); Memo1.Lines.Add('GMail label created!'); CkHttp_Dispose(http); CkJsonObject_Dispose(json); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.