This API supported Trello's standard REST-style API that accepts/returns JSON requests and Here is the [API reference] (https://developers.trello.com/v1.0/reference)
You can find examples here. This will help you for faster implmentation of Trello's.
It does supports EcmaScript 5, EcmaScript 6, EcmaScript 8, TypeScript, async-await, Promises, Callback !
All developers/contributors are requested to open Pull Request/Merge Request on development branch. Please make sure Test Cases be passed.
npm install trello-node-api --save
export DEBUG=TA:*
Set your API Key and Secret/Oauth Token.
var trelloNode = require('trello-node-api')(apiKey, oauthToken);
import * as TrelloNodeAPI from 'trello-node-api';
const trello = new TrelloNodeAPI();
trello.setApiKey('apiKey');
trello.setOauthToken('oauthToken');
- Contributors can send their Pull Request to
development
branch. - Kindly validate test cases & linting before opening new PR.
Are you finding a developer for your world-class product? If yes, please contact here. Submit your project request here. Originally by Bhushankumar L.
Trello.action.del('ACTION_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.action.search('ACTION_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.action.searchField('ACTION_ID', 'FIELD_NAME').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var id = 'ACTION_ID'; // REQUIRED
var data = {
text: 'TEXT' // REQUIRED
};
Trello.action.update(id, data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var data = {
name: 'BOARD_NAME', // REQUIRED
defaultLabels: false,
defaultLists: false,
desc: 'Board description.',
idOrganization: 'ORGANIZATION_ID',
idBoardSource: 'BOARD_ID',
keepFromSource: 'none',
powerUps: 'all',
prefs_permissionLevel: 'private',
prefs_voting: 'disabled',
prefs_comments: 'members',
prefs_invitations: 'members',
prefs_selfJoin: true,
prefs_cardCovers: true,
prefs_background: 'blue',
prefs_cardAging: 'regular'
};
Trello.board.create(data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.board.del('BOARD_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.board.search('BOARD_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.board.searchCards('BOARD_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var boardId = 'BOARD_ID';
var field = 'shortUrl';
Trello.board.searchField(boardId, field).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
const promises = [];
const boardIds = ['BOARD_ID_1', 'BOARD_ID_2'];
boardIds.forEach((boardId) => {
promises.push(Trello.board.search(boardId));
});
try {
const boards = await Promise.all(promises);
console.log('boards ', boards);
} catch (error) {
console.error('[trello]', error);
}
var boardId = 'BOARD_ID';
var fields = {
actions: 'all'
};
Trello.board.search(boardId, fields).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.board.searchCards('BOARD_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.board.searchCardsFilter('BOARD_ID', 'closed').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.board.searchField('BOARD_ID', 'FIELD_NAME').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var id = 'BOARD_ID'; // REQUIRED
var data = {
name: 'BOARD',
desc: 'Board descriptions',
closed: false,
subscribed: false,
idOrganization: 'ORGANIZATION_ID',
prefs_permissionLevel: 'private',
prefs_selfJoin: true,
prefs_cardCovers: true,
prefs_invitations: 'members',
prefs_voting: 'disabled',
prefs_comments: 'members',
prefs_background: 'blue',
prefs_cardAging: 'regular',
prefs_calendarFeedEnabled: false,
labelNames_green: 'Test Label 1',
labelNames_yellow: 'Test Label 2',
labelNames_orange: 'Test Label 3',
labelNames_red: 'Test Label 4',
labelNames_purple: 'Test Label 5',
labelNames_blue: 'Test Label 6'
};
Trello.board.update(id, data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var data = {
name: 'CARD_NAME',
desc: 'Card description',
pos: 'top',
idList: 'LIST_ID', //REQUIRED
due: null,
dueComplete: false,
idMembers: ['MEMBER_ID', 'MEMBER_ID', 'MEMBER_ID'],
idLabels: ['LABEL_ID', 'LABEL_ID', 'LABEL_ID'],
urlSource: 'https://example.com',
fileSource: 'file',
idCardSource: 'CARD_ID',
keepFromSource: 'attachments,checklists,comments,due,labels,members,stickers'
};
Trello.card.create(data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.card.del('CARD_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.card.search('CARD_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.card.searchField('CARD_ID', 'FIELD_NAME').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var id = 'CARD_ID'; // REQUIRED
var data = {
name: 'CARD_NAME_TEST',
desc: 'Card description',
closed: false,
idMembers: 'MEMBER_ID,MEMBER_ID,MEMBER_ID',
idAttachmentCover: null,
idList: 'LIST_ID',
idLabels: 'LABEL_ID, LABEL_ID, LABEL_ID',
idBoard: false,
pos: 'top',
due: null,
dueComplete: false,
subscribed: false
};
Trello.card.update(id, data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var data = {
idCard: 'CARD_ID', // REQUIRED
name: 'CHECKLIST_NAME',
pos: 1
};
Trello.checklist.create(data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.checklist.del('CHECKLIST_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.checklist.search('CHECKLIST_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.checklist.searchField('CHECKLIST_ID', 'FIELD_NAME').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var id = 'CHECKLIST_ID'; // REQUIRED
var data = {
name: 'CHECKLIST_NAME',
pos: 'top'
};
Trello.checklist.update(id, data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.enterprise.search('ENTERPRISE_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var data = {
name: 'LABEL_NAME', // REQUIRED
color: 'orange', // REQUIRED
idBoard: 'BOARD_ID' // REQUIRED
};
Trello.label.create(data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.label.del('LABEL_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.label.search('LABEL_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var id = 'LABEL_ID'; // REQUIRED
var data = {
name: 'NAME',
color: 'orange'
};
Trello.label.update(id, data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var data = {
name: 'LIST_NAME', // REQUIRED
idBoard: 'BOARD_ID', // REQUIRED
idListSource: 'LIST_ID',
pos: 'top'
};
Trello.list.create(data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.list.searchField('LIST_ID', 'FIELD_NAME').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.list.search('LIST_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var id = 'LIST_ID'; // REQUIRED
var data = {
name: 'LIST_NAME',
closed: false,
pos: 'top',
subscribed: false
};
Trello.list.update(id, data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.member.searchField('MEMBER_ID', 'FIELD_NAME').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.member.search('MEMBER_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.member.searchBoards('me').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.notification.searchField('NOTIFICATION_ID', 'FIELD_NAME').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.notification.search('NOTIFICATION_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var id = 'NOTIFICATION_ID'; // REQUIRED
var data = {
unread: false
};
Trello.notification.update(id, data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var data = {
displayName: 'ORGANIZATION_NAME', // REQUIRED
desc: 'Organization description',
name: 'NAME',
website: 'https://example.com'
};
Trello.organization.create(data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.organization.del('ORGANIZATION_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.organization.searchField('ORGANIZATION_ID', 'FIELD_NAME').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.organization.search('ORGANIZATION_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var id = 'ORGANIZATION_ID'; // REQUIRED
var data = {
name: 'or123',
displayName: 'ORGANIZATION_DISPLAY_NAME',
desc: 'Organization descriptions',
website: 'https://example.com',
prefs_associatedDomain: 'trello.com',
prefs_externalMembersDisabled: false,
prefs_googleAppsVersion: 1,
prefs_boardVisibilityRestrict_org: 'none',
prefs_boardVisibilityRestrict_private: 'none',
prefs_boardVisibilityRestrict_public: 'none',
prefs_orgInviteRestrict: '*.test.com',
prefs_permissionLevel: 'public'
};
Trello.organization.update(id, data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var data = {
description: 'Webhook description',
callbackURL: 'https://mycallbackurl.com/', // REQUIRED
idModel: 'MODEL_ID', // REQUIRED
active: false
};
Trello.webhook.create(data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.webhook.del('WEBHOOK_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.webhook.searchField('WEBHOOK_ID', 'FIELD_NAME').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
Trello.webhook.search('WEBHOOK_ID').then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});
var id = 'WEBHOOK_ID'; // REQUIRED
var data = {
displayName: 'ORGANIZATION_DISPLAY_NAME',
description: 'Webhook descriptions',
callbackURL: 'https://mycallbackurl.com/',
idModel: 'MODEL_ID',
active: false
};
Trello.webhook.update(id, data).then(function (response) {
console.log('response ', response);
}).catch(function (error) {
console.log('error', error);
});