Sample code for 30+ languages & platforms
Rust

Trello Create New Board

See more Trello Examples

Create a new board.

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

Chilkat Rust Downloads

Rust

// 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 json_token = chilkat::JsonObject::new();
let _ = json_token.load_file("qa_data/tokens/trello.json").is_ok();

let oauth1 = chilkat::OAuth1::new();
oauth1.set_consumer_key("TRELLO_CONSUMER_KEY");
oauth1.set_consumer_secret("TRELLO_CONSUMER_SECRET");
oauth1.set_token(&json_token.string_of("oauth_token").unwrap_or_default());
oauth1.set_token_secret(&json_token.string_of("oauth_token_secret").unwrap_or_default());

let rest = chilkat::Rest::new();

// 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.
let b_auto_reconnect = true;
if rest.connect("api.trello.com", 443, true, b_auto_reconnect).is_err() {
    println!("{}", rest.last_error_text());
    return;
}

let _ = rest.set_auth_o_auth1(&oauth1, false);

let _ = rest.add_query_param("name", "Football & Rugby");
let _ = rest.add_query_param("defaultLabels", "true");
let _ = rest.add_query_param("defaultLists", "true");
let _ = rest.add_query_param("keepFromSource", "none");
let _ = rest.add_query_param("prefs_permissionLevel", "private");
let _ = rest.add_query_param("prefs_voting", "disabled");
let _ = rest.add_query_param("prefs_comments", "members");
let _ = rest.add_query_param("prefs_invitations", "members");
let _ = rest.add_query_param("prefs_selfJoin", "true");
let _ = rest.add_query_param("prefs_cardCovers", "true");
let _ = rest.add_query_param("prefs_background", "blue");
let _ = rest.add_query_param("prefs_cardAging", "regular");

let _ = rest.add_header("Accept", "application/json");

let Ok(response_body) = rest.full_request_form_url_encoded("POST", "/1/boards") else {
    println!("{}", rest.last_error_text());
    return;
};

// We should expect a 200 response if successful.
if rest.response_status_code() != 200 {
    println!("Request Header: ");
    println!("{}", rest.last_request_header());
    println!("----");
    println!("Response StatusCode = {}", rest.response_status_code());
    println!("Response StatusLine: {}", rest.response_status_text());
    println!("Response Header:");
    println!("{}", rest.response_header());
    println!("{}", response_body);
    return;
}

let json = chilkat::JsonObject::new();
let _ = json.load(&response_body);
json.set_emit_compact(false);
println!("{}", json.emit().unwrap_or_default());
println!("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": {}
// }

let id = json.string_of("id").unwrap_or_default();
let name = json.string_of("name").unwrap_or_default();
let desc = json.string_of("desc").unwrap_or_default();
let desc_data = json.string_of("descData").unwrap_or_default();
let closed = json.bool_of("closed");
let id_organization = json.string_of("idOrganization").unwrap_or_default();
let pinned = json.bool_of("pinned");
let url = json.string_of("url").unwrap_or_default();
let short_url = json.string_of("shortUrl").unwrap_or_default();
let prefs_permission_level = json.string_of("prefs.permissionLevel").unwrap_or_default();
let prefs_voting = json.string_of("prefs.voting").unwrap_or_default();
let prefs_comments = json.string_of("prefs.comments").unwrap_or_default();
let prefs_invitations = json.string_of("prefs.invitations").unwrap_or_default();
let prefs_self_join = json.bool_of("prefs.selfJoin");
let prefs_card_covers = json.bool_of("prefs.cardCovers");
let prefs_card_aging = json.string_of("prefs.cardAging").unwrap_or_default();
let prefs_calendar_feed_enabled = json.bool_of("prefs.calendarFeedEnabled");
let prefs_background = json.string_of("prefs.background").unwrap_or_default();
let prefs_background_image = json.string_of("prefs.backgroundImage").unwrap_or_default();
let prefs_background_image_scaled = json.string_of("prefs.backgroundImageScaled").unwrap_or_default();
let prefs_background_tile = json.bool_of("prefs.backgroundTile");
let prefs_background_brightness = json.string_of("prefs.backgroundBrightness").unwrap_or_default();
let prefs_background_color = json.string_of("prefs.backgroundColor").unwrap_or_default();
let prefs_background_bottom_color = json.string_of("prefs.backgroundBottomColor").unwrap_or_default();
let prefs_background_top_color = json.string_of("prefs.backgroundTopColor").unwrap_or_default();
let prefs_can_be_public = json.bool_of("prefs.canBePublic");
let prefs_can_be_enterprise = json.bool_of("prefs.canBeEnterprise");
let prefs_can_be_org = json.bool_of("prefs.canBeOrg");
let prefs_can_be_private = json.bool_of("prefs.canBePrivate");
let prefs_can_invite = json.bool_of("prefs.canInvite");
let label_names_green = json.string_of("labelNames.green").unwrap_or_default();
let label_names_yellow = json.string_of("labelNames.yellow").unwrap_or_default();
let label_names_orange = json.string_of("labelNames.orange").unwrap_or_default();
let label_names_red = json.string_of("labelNames.red").unwrap_or_default();
let label_names_purple = json.string_of("labelNames.purple").unwrap_or_default();
let label_names_blue = json.string_of("labelNames.blue").unwrap_or_default();
let label_names_sky = json.string_of("labelNames.sky").unwrap_or_default();
let label_names_lime = json.string_of("labelNames.lime").unwrap_or_default();
let label_names_pink = json.string_of("labelNames.pink").unwrap_or_default();
let label_names_black = json.string_of("labelNames.black").unwrap_or_default();