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 Create New BoardCreate a new board. For more information, see https://developers.trello.com/reference#boardsid
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; json: TChilkatJsonObject; id: WideString; name: WideString; desc: WideString; descData: WideString; closed: Integer; idOrganization: WideString; pinned: Integer; url: WideString; shortUrl: WideString; prefsPermissionLevel: WideString; prefsVoting: WideString; prefsComments: WideString; prefsInvitations: WideString; prefsSelfJoin: Integer; prefsCardCovers: Integer; prefsCardAging: WideString; prefsCalendarFeedEnabled: Integer; prefsBackground: WideString; prefsBackgroundImage: WideString; prefsBackgroundImageScaled: WideString; prefsBackgroundTile: Integer; prefsBackgroundBrightness: WideString; prefsBackgroundColor: WideString; prefsBackgroundBottomColor: WideString; prefsBackgroundTopColor: WideString; prefsCanBePublic: Integer; prefsCanBeEnterprise: Integer; prefsCanBeOrg: Integer; prefsCanBePrivate: Integer; prefsCanInvite: Integer; labelNamesGreen: WideString; labelNamesYellow: WideString; labelNamesOrange: WideString; labelNamesRed: WideString; labelNamesPurple: WideString; labelNamesBlue: WideString; labelNamesSky: WideString; labelNamesLime: WideString; labelNamesPink: WideString; labelNamesBlack: WideString; begin // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // curl --request POST \ // --url 'https://api.trello.com/1/boards?name=name&defaultLabels=true&defaultLists=true&keepFromSource=none&prefs_permissionLevel=private // &prefs_voting=disabled&prefs_comments=members&prefs_invitations=members&prefs_selfJoin=true&prefs_cardCovers=true&prefs_background=blue&prefs_cardAging=regular' // 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('name','Football & Rugby'); rest.AddQueryParam('defaultLabels','true'); rest.AddQueryParam('defaultLists','true'); rest.AddQueryParam('keepFromSource','none'); rest.AddQueryParam('prefs_permissionLevel','private'); rest.AddQueryParam('prefs_voting','disabled'); rest.AddQueryParam('prefs_comments','members'); rest.AddQueryParam('prefs_invitations','members'); rest.AddQueryParam('prefs_selfJoin','true'); rest.AddQueryParam('prefs_cardCovers','true'); rest.AddQueryParam('prefs_background','blue'); rest.AddQueryParam('prefs_cardAging','regular'); rest.AddHeader('Accept','application/json'); responseBody := rest.FullRequestFormUrlEncoded('POST','/1/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; json := TChilkatJsonObject.Create(Self); json.Load(responseBody); json.EmitCompact := 0; Memo1.Lines.Add(json.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 // // { // "id": "5cc606a1e2441a8a8fe3dc48", // "name": "Football", // "desc": "", // "descData": null, // "closed": false, // "idOrganization": null, // "pinned": false, // "url": "https://trello.com/b/eadpS1Pe/football", // "shortUrl": "https://trello.com/b/eadpS1Pe", // "prefs": { // "permissionLevel": "private", // "voting": "disabled", // "comments": "members", // "invitations": "members", // "selfJoin": true, // "cardCovers": true, // "cardAging": "regular", // "calendarFeedEnabled": false, // "background": "blue", // "backgroundImage": null, // "backgroundImageScaled": null, // "backgroundTile": false, // "backgroundBrightness": "dark", // "backgroundColor": "#0079BF", // "backgroundBottomColor": "#0079BF", // "backgroundTopColor": "#0079BF", // "canBePublic": true, // "canBeEnterprise": true, // "canBeOrg": true, // "canBePrivate": true, // "canInvite": true // }, // "labelNames": { // "green": "", // "yellow": "", // "orange": "", // "red": "", // "purple": "", // "blue": "", // "sky": "", // "lime": "", // "pink": "", // "black": "" // }, // "limits": {} // } id := json.StringOf('id'); name := json.StringOf('name'); desc := json.StringOf('desc'); descData := json.StringOf('descData'); closed := json.BoolOf('closed'); idOrganization := json.StringOf('idOrganization'); pinned := json.BoolOf('pinned'); url := json.StringOf('url'); shortUrl := json.StringOf('shortUrl'); 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'); prefsBackgroundImageScaled := json.StringOf('prefs.backgroundImageScaled'); prefsBackgroundTile := json.BoolOf('prefs.backgroundTile'); prefsBackgroundBrightness := json.StringOf('prefs.backgroundBrightness'); prefsBackgroundColor := json.StringOf('prefs.backgroundColor'); 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'); 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'); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.