Sample code for 30+ languages & platforms
PHP ActiveX

Trello Create New Board

See more Trello Examples

Create a new board.

For more information, see https://developers.trello.com/reference#boardsid

Chilkat PHP ActiveX Downloads

PHP ActiveX
<?php

$success = 0;

// 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 = new COM("Chilkat.JsonObject");
$success = $jsonToken->LoadFile('qa_data/tokens/trello.json');

$oauth1 = new COM("Chilkat.OAuth1");
$oauth1->ConsumerKey = 'TRELLO_CONSUMER_KEY';
$oauth1->ConsumerSecret = 'TRELLO_CONSUMER_SECRET';
$oauth1->Token = $jsonToken->stringOf('oauth_token');
$oauth1->TokenSecret = $jsonToken->stringOf('oauth_token_secret');

$rest = new COM("Chilkat.Rest");

// 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) {
    print $rest->LastErrorText . "\n";
    exit;
}

$rest->SetAuthOAuth1($oauth1,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) {
    print $rest->LastErrorText . "\n";
    exit;
}

// We should expect a 200 response if successful.
if ($rest->ResponseStatusCode != 200) {
    print 'Request Header: ' . "\n";
    print $rest->LastRequestHeader . "\n";
    print '----' . "\n";
    print 'Response StatusCode = ' . $rest->ResponseStatusCode . "\n";
    print 'Response StatusLine: ' . $rest->ResponseStatusText . "\n";
    print 'Response Header:' . "\n";
    print $rest->ResponseHeader . "\n";
    print $responseBody . "\n";
    exit;
}

$json = new COM("Chilkat.JsonObject");
$json->Load($responseBody);
$json->EmitCompact = 0;
print $json->emit() . "\n";
print 'Success.' . "\n";

// 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');

?>