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 3,4,5...) List GroupsList all the groups available in an organization, including but not limited to Office 365 Groups. See https://docs.microsoft.com/en-us/graph/api/group-list?view=graph-rest-1.0 for more information.
func chilkatTest() { // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. let http = CkoHttp()! // Use your previously obtained access token as shown here: // Get Microsoft Graph OAuth2 Access Token with Group.ReadWrite.All scope. let jsonToken = CkoJsonObject()! var success: Bool = jsonToken.loadFile("qa_data/tokens/msGraphGroup.json") if success == false { print("\(jsonToken.lastErrorText!)") return } http.authToken = jsonToken.string(of: "access_token") // Send a GET request to https://graph.microsoft.com/v1.0/groups?$orderby=displayName var strResponse: String? = http.quickGetStr("https://graph.microsoft.com/v1.0/groups?$orderby=displayName") if http.lastMethodSuccess == false { print("\(http.lastErrorText!)") return } let json = CkoJsonObject()! json.load(strResponse) json.emitCompact = false if http.lastStatus.intValue != 200 { print("\(json.emit()!)") print("Failed, response status code = \(http.lastStatus.intValue)") return } print("\(json.emit()!)") // Sample output: // (See parsing code below..) // { // "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#groups", // "value": [ // { // "id": "45b7d2e7-b882-4a80-ba97-10b7a63b8fa4", // "deletedDateTime": null, // "classification": null, // "createdDateTime": "2018-12-22T02:21:05Z", // "creationOptions": [], // "description": "Self help community for golf", // "displayName": "Golf Assist", // "groupTypes": [ // "Unified" // ], // "mail": "golfassist@contoso.com", // "mailEnabled": true, // "mailNickname": "golfassist", // "onPremisesLastSyncDateTime": null, // "onPremisesSecurityIdentifier": null, // "onPremisesSyncEnabled": null, // "preferredDataLocation": "CAN", // "proxyAddresses": [ // "smtp:golfassist@contoso.onmicrosoft.com", // "SMTP:golfassist@contoso.com" // ], // "renewedDateTime": "2018-12-22T02:21:05Z", // "resourceBehaviorOptions": [], // "resourceProvisioningOptions": [], // "securityEnabled": false, // "visibility": "Public", // "onPremisesProvisioningErrors": [] // }, // { // "id": "d7797254-3084-44d0-99c9-a3b5ab149538", // "deletedDateTime": null, // "classification": null, // "createdDateTime": "2018-11-19T20:29:40Z", // "creationOptions": [], // "description": "Talk about golf", // "displayName": "Golf Discussion", // "groupTypes": [], // "mail": "golftalk@contoso.com", // "mailEnabled": true, // "mailNickname": "golftalk", // "onPremisesLastSyncDateTime": null, // "onPremisesSecurityIdentifier": null, // "onPremisesSyncEnabled": null, // "preferredDataLocation": "CAN", // "proxyAddresses": [ // "smtp:golftalk@contoso.onmicrosoft.com", // "SMTP:golftalk@contoso.com" // ], // "renewedDateTime": "2018-11-19T20:29:40Z", // "resourceBehaviorOptions": [], // "resourceProvisioningOptions": [], // "securityEnabled": false, // "visibility": null, // "onPremisesProvisioningErrors": [] // } // ] // } // // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON var odataContext: String? var i: Int var count_i: Int var id: String? var deletedDateTime: String? var classification: String? var createdDateTime: String? var description: String? var displayName: String? var mail: String? var mailEnabled: Bool var mailNickname: String? var onPremisesLastSyncDateTime: String? var onPremisesSecurityIdentifier: String? var onPremisesSyncEnabled: String? var preferredDataLocation: String? var renewedDateTime: String? var securityEnabled: Bool var visibility: String? var j: Int var count_j: Int var strVal: String? odataContext = json.string(of: "\"@odata.context\"") i = 0 count_i = json.size(ofArray: "value").intValue while i < count_i { json.i = i id = json.string(of: "value[i].id") deletedDateTime = json.string(of: "value[i].deletedDateTime") classification = json.string(of: "value[i].classification") createdDateTime = json.string(of: "value[i].createdDateTime") description = json.string(of: "value[i].description") displayName = json.string(of: "value[i].displayName") mail = json.string(of: "value[i].mail") mailEnabled = json.bool(of: "value[i].mailEnabled") mailNickname = json.string(of: "value[i].mailNickname") onPremisesLastSyncDateTime = json.string(of: "value[i].onPremisesLastSyncDateTime") onPremisesSecurityIdentifier = json.string(of: "value[i].onPremisesSecurityIdentifier") onPremisesSyncEnabled = json.string(of: "value[i].onPremisesSyncEnabled") preferredDataLocation = json.string(of: "value[i].preferredDataLocation") renewedDateTime = json.string(of: "value[i].renewedDateTime") securityEnabled = json.bool(of: "value[i].securityEnabled") visibility = json.string(of: "value[i].visibility") j = 0 count_j = json.size(ofArray: "value[i].creationOptions").intValue while j < count_j { json.j = j // ... j = j + 1 } j = 0 count_j = json.size(ofArray: "value[i].groupTypes").intValue while j < count_j { json.j = j strVal = json.string(of: "value[i].groupTypes[j]") j = j + 1 } j = 0 count_j = json.size(ofArray: "value[i].proxyAddresses").intValue while j < count_j { json.j = j strVal = json.string(of: "value[i].proxyAddresses[j]") j = j + 1 } j = 0 count_j = json.size(ofArray: "value[i].resourceBehaviorOptions").intValue while j < count_j { json.j = j // ... j = j + 1 } j = 0 count_j = json.size(ofArray: "value[i].resourceProvisioningOptions").intValue while j < count_j { json.j = j // ... j = j + 1 } j = 0 count_j = json.size(ofArray: "value[i].onPremisesProvisioningErrors").intValue while j < count_j { json.j = j // ... j = j + 1 } i = i + 1 } print("Success.") } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.