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
(Swift 2) Find a Label ID by NameLookup the ID of a GMail label by the label name.
func chilkatTest() { // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. var success: Bool let http = CkoHttp() http.AuthToken = "GMAIL-ACCESS-TOKEN" var userId: String? = "me" http.SetUrlVar("userId", value: userId) var url: String? = "https://www.googleapis.com/gmail/v1/users/{$userId}/labels" // Get the list of GMail labels as JSON. let sb = CkoStringBuilder() success = http.QuickGetSb(url, sbContent: sb) if success != true { print("\(http.LastErrorText)") return } let json = CkoJsonObject() json.LoadSb(sb) json.EmitCompact = false print("\(json.Emit())") if http.LastStatus.intValue != 200 { print("Failed.") return } // The JSON returned looks like this: // { // "labels": [ // { // "id": "Label_5", // "name": "QA", // "messageListVisibility": "show", // "labelListVisibility": "labelShow", // "type": "user" // }, // { // "id": "Label_21", // "name": "[Gmail]/testFolder", // "type": "user" // }, // { // "id": "CATEGORY_PERSONAL", // "name": "CATEGORY_PERSONAL", // "type": "system" // }, // ... // The name of the label is generally known because it's what we visually see. // The id is what we need to get. Assuming the name is unique, // find the JSON record having name=<desired name> // For example... var jRecord: CkoJsonObject? = json.FindRecord("labels", relPath: "name", value: "QA", caseSensitive: false) if json.LastMethodSuccess == true { print("The id of QA is: \(jRecord!.StringOf("id"))") jRecord = nil } jRecord = json.FindRecord("labels", relPath: "name", value: "[Gmail]/testFolder", caseSensitive: false) if json.LastMethodSuccess == true { print("The id of [Gmail]/testFolder is: \(jRecord!.StringOf("id"))") jRecord = nil } jRecord = json.FindRecord("labels", relPath: "name", value: "questions", caseSensitive: false) if json.LastMethodSuccess == true { print("The id of questions is: \(jRecord!.StringOf("id"))") jRecord = nil } // Output: // The id of QA is: Label_5 // The id of [Gmail]/testFolder is: Label_21 // The id of questions is: Label_43 } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.