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
(Objective-C) Trello List Member BoardsLists the boards that the user is a member of. For more information, see https://developers.trello.com/reference#membersidboards
#import <CkoJsonObject.h> #import <CkoOAuth1.h> #import <CkoRest.h> #import <NSString.h> #import <CkoJsonArray.h> // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // curl --request GET \ // --url 'https://api.trello.com/1/members/{member_id}/boards?filter=all&fields=all&lists=none&memberships=none&organization=false&organization_fields=displayName' // First get our previously obtained access token. CkoJsonObject *jsonToken = [[CkoJsonObject alloc] init]; BOOL success = [jsonToken LoadFile: @"qa_data/tokens/trello.json"]; CkoOAuth1 *oauth1 = [[CkoOAuth1 alloc] init]; oauth1.ConsumerKey = @"TRELLO_CONSUMER_KEY"; oauth1.ConsumerSecret = @"TRELLO_CONSUMER_SECRET"; oauth1.Token = [jsonToken StringOf: @"oauth_token"]; oauth1.TokenSecret = [jsonToken StringOf: @"oauth_token_secret"]; CkoRest *rest = [[CkoRest alloc] init]; // Connect using TLS. // A single REST object, once connected, can be used for many Trello REST API calls. // The auto-reconnect indicates that if the already-established HTTPS connection is closed, // then it will be automatically re-established as needed. BOOL bAutoReconnect = YES; success = [rest Connect: @"api.trello.com" port: [NSNumber numberWithInt: 443] tls: YES autoReconnect: bAutoReconnect]; if (success != YES) { NSLog(@"%@",rest.LastErrorText); return; } [rest SetAuthOAuth1: oauth1 useQueryParams: NO]; [rest AddQueryParam: @"filter" value: @"all"]; [rest AddQueryParam: @"fields" value: @"all"]; [rest AddQueryParam: @"lists" value: @"none"]; [rest AddQueryParam: @"memberships" value: @"normal"]; [rest AddQueryParam: @"organization" value: @"false"]; [rest AddQueryParam: @"organization_fields" value: @"name,displayName"]; [rest AddHeader: @"Accept" value: @"application/json"]; NSString *responseBody = [rest FullRequestNoBody: @"GET" uriPath: @"/1/members/member_id/boards"]; if (rest.LastMethodSuccess != YES) { NSLog(@"%@",rest.LastErrorText); return; } // We should expect a 200 response if successful. if ([rest.ResponseStatusCode intValue] != 200) { NSLog(@"%@",@"Request Header: "); NSLog(@"%@",rest.LastRequestHeader); NSLog(@"%@",@"----"); NSLog(@"%@%d",@"Response StatusCode = ",[rest.ResponseStatusCode intValue]); NSLog(@"%@%@",@"Response StatusLine: ",rest.ResponseStatusText); NSLog(@"%@",@"Response Header:"); NSLog(@"%@",rest.ResponseHeader); NSLog(@"%@",responseBody); return; } CkoJsonArray *jarr = [[CkoJsonArray alloc] init]; [jarr Load: responseBody]; jarr.EmitCompact = NO; NSLog(@"%@",[jarr Emit]); NSLog(@"%@",@"Success."); // A sample JSON response: // (See the parsing code below...) // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON // [ // { // "name": "House Projects", // "desc": "", // "descData": null, // "closed": false, // "idOrganization": null, // "limits": null, // "pinned": null, // "shortLink": "j1hkQKKS", // "powerUps": [ // ], // "dateLastActivity": null, // "idTags": [ // ], // "datePluginDisable": null, // "creationMethod": null, // "ixUpdate": null, // "id": "5cc5fe862106bb8e05aa41e7", // "starred": false, // "url": "https://trello.com/b/j1hkQKKS/house-projects", // "prefs": { // "permissionLevel": "private", // "voting": "disabled", // "comments": "members", // "invitations": "members", // "selfJoin": false, // "cardCovers": true, // "cardAging": "regular", // "calendarFeedEnabled": false, // "background": "5cc344f6ba4cdc5f5cfc7d81", // "backgroundImage": "https://trello-backgrounds.s3.amazonaws.com/SharedBackground/2560x1709/4418c78f2f66d26932fef88aead2aff5/photo-1555985202-12975b0235dc", // "backgroundImageScaled": [ // { // "width": 140, // "height": 93, // "url": "https://trello-backgrounds.s3.amazonaws.com/SharedBackground/140x93/0aebced0ac2d8c9c4b9231b1960d28c2/photo-1555985202-12975b0235dc.jpg" // }, // ... // { // "width": 2560, // "height": 1709, // "url": "https://trello-backgrounds.s3.amazonaws.com/SharedBackground/2560x1709/4418c78f2f66d26932fef88aead2aff5/photo-1555985202-12975b0235dc" // } // ], // "backgroundTile": false, // "backgroundBrightness": "dark", // "backgroundBottomColor": "#412f23", // "backgroundTopColor": "#a99d97", // "canBePublic": true, // "canBeEnterprise": true, // "canBeOrg": true, // "canBePrivate": true, // "canInvite": true // }, // "subscribed": false, // "labelNames": { // "green": "", // "yellow": "", // "orange": "", // "red": "", // "purple": "", // "blue": "", // "sky": "", // "lime": "", // "pink": "", // "black": "" // }, // "dateLastView": "2019-04-28T19:28:18.159Z", // "shortUrl": "https://trello.com/b/j1hkQKKS", // "memberships": [ // { // "id": "5cc5fe862106bb8e05aa41e8", // "idMember": "5cc5c74067d5215921ca7677", // "memberType": "admin", // "unconfirmed": false, // "deactivated": false // } // ] // }, // { // "name": "Vacation Planning", // "desc": "", // "descData": null, // "closed": false, // "idOrganization": null, // "limits": null, // "pinned": null, // "shortLink": "QqIHvQyz", // "powerUps": [ // ], // "dateLastActivity": "2019-04-28T15:32:20.134Z", // "idTags": [ // ], // "datePluginDisable": null, // "creationMethod": "assisted", // "ixUpdate": null, // "id": "5cc5c783f5b10f8717a6b3d6", // "starred": false, // "url": "https://trello.com/b/QqIHvQyz/vacation-planning", // "prefs": { // "permissionLevel": "private", // "voting": "disabled", // "comments": "members", // "invitations": "members", // "selfJoin": true, // "cardCovers": true, // "cardAging": "regular", // "calendarFeedEnabled": false, // "background": "lime", // "backgroundImage": null, // "backgroundImageScaled": null, // "backgroundTile": false, // "backgroundBrightness": "dark", // "backgroundColor": "#4BBF6B", // "backgroundBottomColor": "#4BBF6B", // "backgroundTopColor": "#4BBF6B", // "canBePublic": true, // "canBeEnterprise": true, // "canBeOrg": true, // "canBePrivate": true, // "canInvite": true // }, // "subscribed": false, // "labelNames": { // "green": "", // "yellow": "", // "orange": "", // "red": "", // "purple": "", // "blue": "", // "sky": "", // "lime": "", // "pink": "", // "black": "" // }, // "dateLastView": "2019-04-28T19:32:21.009Z", // "shortUrl": "https://trello.com/b/QqIHvQyz", // "memberships": [ // { // "id": "5cc5c783f5b10f8717a6b3d7", // "idMember": "5cc5c74067d5215921ca7677", // "memberType": "admin", // "unconfirmed": false, // "deactivated": false // } // ] // } // ] int i; int count_i; CkoJsonObject *json = 0; NSString *name = 0; NSString *desc = 0; NSString *descData = 0; BOOL closed; NSString *idOrganization = 0; NSString *limits = 0; NSString *pinned = 0; NSString *shortLink = 0; NSString *dateLastActivity = 0; NSString *datePluginDisable = 0; NSString *creationMethod = 0; NSString *ixUpdate = 0; NSString *id = 0; BOOL starred; NSString *url = 0; NSString *prefsPermissionLevel = 0; NSString *prefsVoting = 0; NSString *prefsComments = 0; NSString *prefsInvitations = 0; BOOL prefsSelfJoin; BOOL prefsCardCovers; NSString *prefsCardAging = 0; BOOL prefsCalendarFeedEnabled; NSString *prefsBackground = 0; NSString *prefsBackgroundImage = 0; BOOL prefsBackgroundTile; NSString *prefsBackgroundBrightness = 0; NSString *prefsBackgroundBottomColor = 0; NSString *prefsBackgroundTopColor = 0; BOOL prefsCanBePublic; BOOL prefsCanBeEnterprise; BOOL prefsCanBeOrg; BOOL prefsCanBePrivate; BOOL prefsCanInvite; BOOL subscribed; NSString *labelNamesGreen = 0; NSString *labelNamesYellow = 0; NSString *labelNamesOrange = 0; NSString *labelNamesRed = 0; NSString *labelNamesPurple = 0; NSString *labelNamesBlue = 0; NSString *labelNamesSky = 0; NSString *labelNamesLime = 0; NSString *labelNamesPink = 0; NSString *labelNamesBlack = 0; NSString *dateLastView = 0; NSString *shortUrl = 0; NSString *prefsBackgroundImageScaled = 0; NSString *prefsBackgroundColor = 0; int j; int count_j; int width; int height; NSString *idMember = 0; NSString *memberType = 0; BOOL unconfirmed; BOOL deactivated; i = 0; count_i = [jarr.Size intValue]; while (i < count_i) { json = [jarr ObjectAt: [NSNumber numberWithInt: i]]; name = [json StringOf: @"name"]; desc = [json StringOf: @"desc"]; descData = [json StringOf: @"descData"]; closed = [json BoolOf: @"closed"]; idOrganization = [json StringOf: @"idOrganization"]; limits = [json StringOf: @"limits"]; pinned = [json StringOf: @"pinned"]; shortLink = [json StringOf: @"shortLink"]; dateLastActivity = [json StringOf: @"dateLastActivity"]; datePluginDisable = [json StringOf: @"datePluginDisable"]; creationMethod = [json StringOf: @"creationMethod"]; ixUpdate = [json StringOf: @"ixUpdate"]; id = [json StringOf: @"id"]; starred = [json BoolOf: @"starred"]; url = [json StringOf: @"url"]; prefsPermissionLevel = [json StringOf: @"prefs.permissionLevel"]; prefsVoting = [json StringOf: @"prefs.voting"]; prefsComments = [json StringOf: @"prefs.comments"]; prefsInvitations = [json StringOf: @"prefs.invitations"]; prefsSelfJoin = [json BoolOf: @"prefs.selfJoin"]; prefsCardCovers = [json BoolOf: @"prefs.cardCovers"]; prefsCardAging = [json StringOf: @"prefs.cardAging"]; prefsCalendarFeedEnabled = [json BoolOf: @"prefs.calendarFeedEnabled"]; prefsBackground = [json StringOf: @"prefs.background"]; prefsBackgroundImage = [json StringOf: @"prefs.backgroundImage"]; prefsBackgroundTile = [json BoolOf: @"prefs.backgroundTile"]; prefsBackgroundBrightness = [json StringOf: @"prefs.backgroundBrightness"]; prefsBackgroundBottomColor = [json StringOf: @"prefs.backgroundBottomColor"]; prefsBackgroundTopColor = [json StringOf: @"prefs.backgroundTopColor"]; prefsCanBePublic = [json BoolOf: @"prefs.canBePublic"]; prefsCanBeEnterprise = [json BoolOf: @"prefs.canBeEnterprise"]; prefsCanBeOrg = [json BoolOf: @"prefs.canBeOrg"]; prefsCanBePrivate = [json BoolOf: @"prefs.canBePrivate"]; prefsCanInvite = [json BoolOf: @"prefs.canInvite"]; subscribed = [json BoolOf: @"subscribed"]; labelNamesGreen = [json StringOf: @"labelNames.green"]; labelNamesYellow = [json StringOf: @"labelNames.yellow"]; labelNamesOrange = [json StringOf: @"labelNames.orange"]; labelNamesRed = [json StringOf: @"labelNames.red"]; labelNamesPurple = [json StringOf: @"labelNames.purple"]; labelNamesBlue = [json StringOf: @"labelNames.blue"]; labelNamesSky = [json StringOf: @"labelNames.sky"]; labelNamesLime = [json StringOf: @"labelNames.lime"]; labelNamesPink = [json StringOf: @"labelNames.pink"]; labelNamesBlack = [json StringOf: @"labelNames.black"]; dateLastView = [json StringOf: @"dateLastView"]; shortUrl = [json StringOf: @"shortUrl"]; prefsBackgroundImageScaled = [json StringOf: @"prefs.backgroundImageScaled"]; prefsBackgroundColor = [json StringOf: @"prefs.backgroundColor"]; j = 0; count_j = [[json SizeOfArray: @"powerUps"] intValue]; while (j < count_j) { json.J = [NSNumber numberWithInt: j]; // ... j = j + 1; } j = 0; count_j = [[json SizeOfArray: @"idTags"] intValue]; while (j < count_j) { json.J = [NSNumber numberWithInt: j]; // ... j = j + 1; } j = 0; count_j = [[json SizeOfArray: @"prefs.backgroundImageScaled"] intValue]; while (j < count_j) { json.J = [NSNumber numberWithInt: j]; width = [[json IntOf: @"prefs.backgroundImageScaled[j].width"] intValue]; height = [[json IntOf: @"prefs.backgroundImageScaled[j].height"] intValue]; url = [json StringOf: @"prefs.backgroundImageScaled[j].url"]; j = j + 1; } j = 0; count_j = [[json SizeOfArray: @"memberships"] intValue]; while (j < count_j) { json.J = [NSNumber numberWithInt: j]; id = [json StringOf: @"memberships[j].id"]; idMember = [json StringOf: @"memberships[j].idMember"]; memberType = [json StringOf: @"memberships[j].memberType"]; unconfirmed = [json BoolOf: @"memberships[j].unconfirmed"]; deactivated = [json BoolOf: @"memberships[j].deactivated"]; j = j + 1; } i = i + 1; } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.