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
(Delphi ActiveX) Trello List Member BoardsLists the boards that the user is a member of. For more information, see https://developers.trello.com/reference#membersidboards
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB; ... procedure TForm1.Button1Click(Sender: TObject); var jsonToken: TChilkatJsonObject; success: Integer; oauth1: TChilkatOAuth1; rest: TChilkatRest; bAutoReconnect: Integer; responseBody: WideString; jarr: TChilkatJsonArray; i: Integer; count_i: Integer; json: IChilkatJsonObject; name: WideString; desc: WideString; descData: WideString; closed: Integer; idOrganization: WideString; limits: WideString; pinned: WideString; shortLink: WideString; dateLastActivity: WideString; datePluginDisable: WideString; creationMethod: WideString; ixUpdate: WideString; id: WideString; starred: Integer; url: WideString; prefsPermissionLevel: WideString; prefsVoting: WideString; prefsComments: WideString; prefsInvitations: WideString; prefsSelfJoin: Integer; prefsCardCovers: Integer; prefsCardAging: WideString; prefsCalendarFeedEnabled: Integer; prefsBackground: WideString; prefsBackgroundImage: WideString; prefsBackgroundTile: Integer; prefsBackgroundBrightness: WideString; prefsBackgroundBottomColor: WideString; prefsBackgroundTopColor: WideString; prefsCanBePublic: Integer; prefsCanBeEnterprise: Integer; prefsCanBeOrg: Integer; prefsCanBePrivate: Integer; prefsCanInvite: Integer; subscribed: Integer; labelNamesGreen: WideString; labelNamesYellow: WideString; labelNamesOrange: WideString; labelNamesRed: WideString; labelNamesPurple: WideString; labelNamesBlue: WideString; labelNamesSky: WideString; labelNamesLime: WideString; labelNamesPink: WideString; labelNamesBlack: WideString; dateLastView: WideString; shortUrl: WideString; prefsBackgroundImageScaled: WideString; prefsBackgroundColor: WideString; j: Integer; count_j: Integer; width: Integer; height: Integer; idMember: WideString; memberType: WideString; unconfirmed: Integer; deactivated: Integer; begin // 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. jsonToken := TChilkatJsonObject.Create(Self); success := jsonToken.LoadFile('qa_data/tokens/trello.json'); oauth1 := TChilkatOAuth1.Create(Self); oauth1.ConsumerKey := 'TRELLO_CONSUMER_KEY'; oauth1.ConsumerSecret := 'TRELLO_CONSUMER_SECRET'; oauth1.Token := jsonToken.StringOf('oauth_token'); oauth1.TokenSecret := jsonToken.StringOf('oauth_token_secret'); rest := TChilkatRest.Create(Self); // 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. bAutoReconnect := 1; success := rest.Connect('api.trello.com',443,1,bAutoReconnect); if (success <> 1) then begin Memo1.Lines.Add(rest.LastErrorText); Exit; end; rest.SetAuthOAuth1(oauth1.ControlInterface,0); 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'); responseBody := rest.FullRequestNoBody('GET','/1/members/member_id/boards'); if (rest.LastMethodSuccess <> 1) then begin Memo1.Lines.Add(rest.LastErrorText); Exit; end; // We should expect a 200 response if successful. if (rest.ResponseStatusCode <> 200) then begin Memo1.Lines.Add('Request Header: '); Memo1.Lines.Add(rest.LastRequestHeader); Memo1.Lines.Add('----'); Memo1.Lines.Add('Response StatusCode = ' + IntToStr(rest.ResponseStatusCode)); Memo1.Lines.Add('Response StatusLine: ' + rest.ResponseStatusText); Memo1.Lines.Add('Response Header:'); Memo1.Lines.Add(rest.ResponseHeader); Memo1.Lines.Add(responseBody); Exit; end; jarr := TChilkatJsonArray.Create(Self); jarr.Load(responseBody); jarr.EmitCompact := 0; Memo1.Lines.Add(jarr.Emit()); Memo1.Lines.Add('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 // } // ] // } // ] i := 0; count_i := jarr.Size; while i < count_i do begin json := jarr.ObjectAt(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'); while j < count_j do begin json.J := j; // ... j := j + 1; end; j := 0; count_j := json.SizeOfArray('idTags'); while j < count_j do begin json.J := j; // ... j := j + 1; end; j := 0; count_j := json.SizeOfArray('prefs.backgroundImageScaled'); while j < count_j do begin 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 + 1; end; j := 0; count_j := json.SizeOfArray('memberships'); while j < count_j do begin json.J := 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; end; i := i + 1; end; end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.