Dart
Dart
Trello List Member Boards
See more Trello Examples
Lists the boards that the user is a member of.For more information, see https://developers.trello.com/reference#membersidboards
Chilkat Dart Downloads
import 'package:chilkat/chilkat.dart';
void main() {
// 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.
final jsonToken = CkJsonObject();
jsonToken.loadFile('qa_data/tokens/trello.json');
final oauth1 = CkOAuth1();
oauth1.consumerKey = 'TRELLO_CONSUMER_KEY';
oauth1.consumerSecret = 'TRELLO_CONSUMER_SECRET';
oauth1.token = jsonToken.stringOf('oauth_token');
oauth1.tokenSecret = jsonToken.stringOf('oauth_token_secret');
final rest = CkRest();
// 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.
final bAutoReconnect = true;
try {
rest.connect('api.trello.com', 443, true, bAutoReconnect);
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
rest.setAuthOAuth1(oauth1, false);
rest.addQueryParam('filter', 'all');
rest.addQueryParam('fields', 'all');
rest.addQueryParam('lists', 'none');
rest.addQueryParam('memberships', 'normal');
rest.addQueryParam('organization', 'false');
rest.addQueryParam('organization_fields', 'name,displayName');
rest.addHeader('Accept', 'application/json');
final String responseBody;
try {
responseBody = rest.fullRequestNoBody('GET', '/1/members/member_id/boards');
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
// We should expect a 200 response if successful.
if (rest.responseStatusCode != 200) {
print('Request Header: ');
print(rest.lastRequestHeader);
print('----');
print('Response StatusCode = ${rest.responseStatusCode}');
print('Response StatusLine: ${rest.responseStatusText}');
print('Response Header:');
print(rest.responseHeader);
print(responseBody);
return;
}
final jarr = CkJsonArray();
jarr.load(responseBody);
jarr.emitCompact = false;
print(jarr.emit());
print('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
// }
// ]
// }
// ]
var i = 0;
var name = '';
var desc = '';
var descData = '';
var idOrganization = '';
var limits = '';
var pinned = '';
var shortLink = '';
var dateLastActivity = '';
var datePluginDisable = '';
var creationMethod = '';
var ixUpdate = '';
var id = '';
var url = '';
var prefsPermissionLevel = '';
var prefsVoting = '';
var prefsComments = '';
var prefsInvitations = '';
var prefsCardAging = '';
var prefsBackground = '';
var prefsBackgroundImage = '';
var prefsBackgroundBrightness = '';
var prefsBackgroundBottomColor = '';
var prefsBackgroundTopColor = '';
var labelNamesGreen = '';
var labelNamesYellow = '';
var labelNamesOrange = '';
var labelNamesRed = '';
var labelNamesPurple = '';
var labelNamesBlue = '';
var labelNamesSky = '';
var labelNamesLime = '';
var labelNamesPink = '';
var labelNamesBlack = '';
var dateLastView = '';
var shortUrl = '';
var prefsBackgroundImageScaled = '';
var prefsBackgroundColor = '';
var j = 0;
var countJ = 0;
var width = 0;
var height = 0;
var idMember = '';
var memberType = '';
i = 0;
final countI = jarr.size;
while (i < countI) {
final json = jarr.objectAt(i);
name = json.stringOf('name');
desc = json.stringOf('desc');
descData = json.stringOf('descData');
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');
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');
json.boolOf('prefs.selfJoin');
json.boolOf('prefs.cardCovers');
prefsCardAging = json.stringOf('prefs.cardAging');
json.boolOf('prefs.calendarFeedEnabled');
prefsBackground = json.stringOf('prefs.background');
prefsBackgroundImage = json.stringOf('prefs.backgroundImage');
json.boolOf('prefs.backgroundTile');
prefsBackgroundBrightness = json.stringOf('prefs.backgroundBrightness');
prefsBackgroundBottomColor = json.stringOf('prefs.backgroundBottomColor');
prefsBackgroundTopColor = json.stringOf('prefs.backgroundTopColor');
json.boolOf('prefs.canBePublic');
json.boolOf('prefs.canBeEnterprise');
json.boolOf('prefs.canBeOrg');
json.boolOf('prefs.canBePrivate');
json.boolOf('prefs.canInvite');
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;
countJ = json.sizeOfArray('powerUps');
while (j < countJ) {
json.j = j;
// ...
j++;
}
j = 0;
countJ = json.sizeOfArray('idTags');
while (j < countJ) {
json.j = j;
// ...
j++;
}
j = 0;
countJ = json.sizeOfArray('prefs.backgroundImageScaled');
while (j < countJ) {
json.j = j;
width = json.intOf('prefs.backgroundImageScaled[j].width');
height = json.intOf('prefs.backgroundImageScaled[j].height');
url = json.stringOf('prefs.backgroundImageScaled[j].url');
j++;
}
j = 0;
countJ = json.sizeOfArray('memberships');
while (j < countJ) {
json.j = j;
id = json.stringOf('memberships[j].id');
idMember = json.stringOf('memberships[j].idMember');
memberType = json.stringOf('memberships[j].memberType');
json.boolOf('memberships[j].unconfirmed');
json.boolOf('memberships[j].deactivated');
j++;
}
i++;
}
}