Sample code for 30+ languages & platforms
Swift

Trello Create New Board

See more Trello Examples

Create a new board.

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

Chilkat Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = false

    // 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.
    let jsonToken = CkoJsonObject()!
    success = jsonToken.loadFile(path: "qa_data/tokens/trello.json")

    let oauth1 = CkoOAuth1()!
    oauth1.consumerKey = "TRELLO_CONSUMER_KEY"
    oauth1.consumerSecret = "TRELLO_CONSUMER_SECRET"
    oauth1.token = jsonToken.string(of: "oauth_token")
    oauth1.tokenSecret = jsonToken.string(of: "oauth_token_secret")

    let rest = CkoRest()!

    // 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.
    var bAutoReconnect: Bool = true
    success = rest.connect(hostname: "api.trello.com", port: 443, tls: true, autoReconnect: bAutoReconnect)
    if success != true {
        print("\(rest.lastErrorText!)")
        return
    }

    rest.setAuthOAuth1(authProvider: oauth1, useQueryParams: false)

    rest.addQueryParam(name: "name", value: "Football & Rugby")
    rest.addQueryParam(name: "defaultLabels", value: "true")
    rest.addQueryParam(name: "defaultLists", value: "true")
    rest.addQueryParam(name: "keepFromSource", value: "none")
    rest.addQueryParam(name: "prefs_permissionLevel", value: "private")
    rest.addQueryParam(name: "prefs_voting", value: "disabled")
    rest.addQueryParam(name: "prefs_comments", value: "members")
    rest.addQueryParam(name: "prefs_invitations", value: "members")
    rest.addQueryParam(name: "prefs_selfJoin", value: "true")
    rest.addQueryParam(name: "prefs_cardCovers", value: "true")
    rest.addQueryParam(name: "prefs_background", value: "blue")
    rest.addQueryParam(name: "prefs_cardAging", value: "regular")

    rest.addHeader(name: "Accept", value: "application/json")

    var responseBody: String? = rest.fullRequestFormUrlEncoded(httpVerb: "POST", uriPath: "/1/boards")
    if rest.lastMethodSuccess != true {
        print("\(rest.lastErrorText!)")
        return
    }

    // We should expect a 200 response if successful.
    if rest.responseStatusCode.intValue != 200 {
        print("Request Header: ")
        print("\(rest.lastRequestHeader!)")
        print("----")
        print("Response StatusCode = \(rest.responseStatusCode.intValue)")
        print("Response StatusLine: \(rest.responseStatusText!)")
        print("Response Header:")
        print("\(rest.responseHeader!)")
        print("\(responseBody!)")
        return
    }

    let json = CkoJsonObject()!
    json.load(json: responseBody)
    json.emitCompact = false
    print("\(json.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

    // 
    // {
    //   "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": {}
    // }

    var id: String?
    var name: String?
    var desc: String?
    var descData: String?
    var closed: Bool
    var idOrganization: String?
    var pinned: Bool
    var url: String?
    var shortUrl: String?
    var prefsPermissionLevel: String?
    var prefsVoting: String?
    var prefsComments: String?
    var prefsInvitations: String?
    var prefsSelfJoin: Bool
    var prefsCardCovers: Bool
    var prefsCardAging: String?
    var prefsCalendarFeedEnabled: Bool
    var prefsBackground: String?
    var prefsBackgroundImage: String?
    var prefsBackgroundImageScaled: String?
    var prefsBackgroundTile: Bool
    var prefsBackgroundBrightness: String?
    var prefsBackgroundColor: String?
    var prefsBackgroundBottomColor: String?
    var prefsBackgroundTopColor: String?
    var prefsCanBePublic: Bool
    var prefsCanBeEnterprise: Bool
    var prefsCanBeOrg: Bool
    var prefsCanBePrivate: Bool
    var prefsCanInvite: Bool
    var labelNamesGreen: String?
    var labelNamesYellow: String?
    var labelNamesOrange: String?
    var labelNamesRed: String?
    var labelNamesPurple: String?
    var labelNamesBlue: String?
    var labelNamesSky: String?
    var labelNamesLime: String?
    var labelNamesPink: String?
    var labelNamesBlack: String?

    id = json.string(of: "id")
    name = json.string(of: "name")
    desc = json.string(of: "desc")
    descData = json.string(of: "descData")
    closed = json.bool(of: "closed")
    idOrganization = json.string(of: "idOrganization")
    pinned = json.bool(of: "pinned")
    url = json.string(of: "url")
    shortUrl = json.string(of: "shortUrl")
    prefsPermissionLevel = json.string(of: "prefs.permissionLevel")
    prefsVoting = json.string(of: "prefs.voting")
    prefsComments = json.string(of: "prefs.comments")
    prefsInvitations = json.string(of: "prefs.invitations")
    prefsSelfJoin = json.bool(of: "prefs.selfJoin")
    prefsCardCovers = json.bool(of: "prefs.cardCovers")
    prefsCardAging = json.string(of: "prefs.cardAging")
    prefsCalendarFeedEnabled = json.bool(of: "prefs.calendarFeedEnabled")
    prefsBackground = json.string(of: "prefs.background")
    prefsBackgroundImage = json.string(of: "prefs.backgroundImage")
    prefsBackgroundImageScaled = json.string(of: "prefs.backgroundImageScaled")
    prefsBackgroundTile = json.bool(of: "prefs.backgroundTile")
    prefsBackgroundBrightness = json.string(of: "prefs.backgroundBrightness")
    prefsBackgroundColor = json.string(of: "prefs.backgroundColor")
    prefsBackgroundBottomColor = json.string(of: "prefs.backgroundBottomColor")
    prefsBackgroundTopColor = json.string(of: "prefs.backgroundTopColor")
    prefsCanBePublic = json.bool(of: "prefs.canBePublic")
    prefsCanBeEnterprise = json.bool(of: "prefs.canBeEnterprise")
    prefsCanBeOrg = json.bool(of: "prefs.canBeOrg")
    prefsCanBePrivate = json.bool(of: "prefs.canBePrivate")
    prefsCanInvite = json.bool(of: "prefs.canInvite")
    labelNamesGreen = json.string(of: "labelNames.green")
    labelNamesYellow = json.string(of: "labelNames.yellow")
    labelNamesOrange = json.string(of: "labelNames.orange")
    labelNamesRed = json.string(of: "labelNames.red")
    labelNamesPurple = json.string(of: "labelNames.purple")
    labelNamesBlue = json.string(of: "labelNames.blue")
    labelNamesSky = json.string(of: "labelNames.sky")
    labelNamesLime = json.string(of: "labelNames.lime")
    labelNamesPink = json.string(of: "labelNames.pink")
    labelNamesBlack = json.string(of: "labelNames.black")

}