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
(DataFlex) Get GMail Message MetadataDemonstrates how to get the metadata for each message in a list of message IDs. For more information, see https://developers.google.com/gmail/api/v1/reference/users/messages/get
Use ChilkatAx-win32.pkg Procedure Test Handle hoHttp Handle hoJsonMsgIds Boolean iSuccess String sId Integer i Integer iCount_i Variant vResp Handle hoResp Handle hoJsonResponse String sTemp1 Integer iTemp1 Boolean bTemp1 // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatHttp)) To hoHttp If (Not(IsComObjectCreated(hoHttp))) Begin Send CreateComObject of hoHttp End Set ComAuthToken Of hoHttp To "ACCESS_TOKEN" Set ComAccept Of hoHttp To "application/json" // Let's say we have the following JSON containing a list of message ID's // { // "messages": [ // { // "id": "1712bc1dc22da2a2", // "threadId": "1712bc1dc22da2a2" // }, // { // "id": "1712b94fa2168040", // "threadId": "1712b94fa2168040" // }, // { // "id": "1711e4bd96ded05e", // "threadId": "1711e4bd96ded05e" // }, // { // "id": "1711de0d119e751e", // "threadId": "1711de0d119e751e" // }, // { // "id": "1711c81a43050f59", // "threadId": "1711c81a43050f59" // }, // { // "id": "1711c2c1516abce5", // "threadId": "1711c2c1516abce5" // }, // { // "id": "1711c161e655c915", // "threadId": "1711c161e655c915" // }, // { // "id": "171199c6e454558c", // "threadId": "171199c6e454558c" // }, // { // "id": "17119474c8aa248e", // "threadId": "17119474c8aa248e" // } // ], // "nextPageToken": "16710921492249671162", // "resultSizeEstimate": 309 // } // Normally your program would have the above JSON in a string variable (obtained from a previous call to get // a list of message IDs from a GMail mailbox). In this example, we'll load the JSON from a file. Get Create (RefClass(cComChilkatJsonObject)) To hoJsonMsgIds If (Not(IsComObjectCreated(hoJsonMsgIds))) Begin Send CreateComObject of hoJsonMsgIds End Get ComLoadFile Of hoJsonMsgIds "qa_data/json/gmail_message_ids.json" To iSuccess Move 0 To i Get ComSizeOfArray Of hoJsonMsgIds "messages" To iCount_i While (i < iCount_i) Set ComI Of hoJsonMsgIds To i Get ComStringOf Of hoJsonMsgIds "messages[i].id" To sId // Get the metadata for this message ID. Get ComSetUrlVar Of hoHttp "id" sId To iSuccess Get ComQuickRequest Of hoHttp "GET" "https://www.googleapis.com/gmail/v1/users/userId/messages/{$id}?format=metadata" To vResp If (IsComObject(vResp)) Begin Get Create (RefClass(cComChilkatHttpResponse)) To hoResp Set pvComObject Of hoResp To vResp End Get ComLastMethodSuccess Of hoHttp To bTemp1 If (bTemp1 <> True) Begin Get ComLastErrorText Of hoHttp To sTemp1 Showln sTemp1 Procedure_Return End Get ComStatusCode Of hoResp To iTemp1 Showln "Response Status Code: " iTemp1 Get Create (RefClass(cComChilkatJsonObject)) To hoJsonResponse If (Not(IsComObjectCreated(hoJsonResponse))) Begin Send CreateComObject of hoJsonResponse End Get ComBodyStr Of hoResp To sTemp1 Get ComLoad Of hoJsonResponse sTemp1 To iSuccess Set ComEmitCompact Of hoJsonResponse To False Get ComEmit Of hoJsonResponse To sTemp1 Showln sTemp1 Get ComStatusCode Of hoResp To iTemp1 If (iTemp1 <> 200) Begin Showln "Failed." Send Destroy of hoResp Procedure_Return End Send Destroy of hoResp Move (i + 1) To i Loop // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.