Module: Trello
- Defined in:
- lib/trello.rb,
lib/trello/net.rb,
lib/trello/card.rb,
lib/trello/item.rb,
lib/trello/list.rb,
lib/trello/board.rb,
lib/trello/error.rb,
lib/trello/label.rb,
lib/trello/token.rb,
lib/trello/action.rb,
lib/trello/client.rb,
lib/trello/member.rb,
lib/trello/comment.rb,
lib/trello/webhook.rb,
lib/trello/checklist.rb,
lib/trello/attachment.rb,
lib/trello/basic_data.rb,
lib/trello/item_state.rb,
lib/trello/json_utils.rb,
lib/trello/label_name.rb,
lib/trello/association.rb,
lib/trello/cover_image.rb,
lib/trello/has_actions.rb,
lib/trello/custom_field.rb,
lib/trello/notification.rb,
lib/trello/organization.rb,
lib/trello/plugin_datum.rb,
lib/trello/authorization.rb,
lib/trello/configuration.rb,
lib/trello/association_proxy.rb,
lib/trello/custom_field_item.rb,
lib/trello/multi_association.rb,
lib/trello/custom_field_option.rb
Overview
Ruby wrapper around the Trello API
First, set up your key information. You can get this information by clicking here.
You can get the key by going to this url in your browser: trello.com/1/authorize?key=TRELLO_CONSUMER_KEY_FROM_ABOVE&name=MyApp&response_type=token&scope=read,write,account&expiration=never Only request the permissions you need; i.e., scope=read if you only need read, or scope=write if you only need write. Comma separate scopes you need. If you want your token to expire after 30 days, drop the &expiration=never. Then run the following code, where KEY denotes the key returned from the url above:
Trello.configure do |config|
config.consumer_key = TRELLO_CONSUMER_KEY
config.consumer_secret = TRELLO_CONSUMER_SECRET
config.oauth_token = TRELLO_OAUTH_TOKEN
config.oauth_token_secret = TRELLO_OAUTH_TOKEN_SECRET
end
All the calls this library make to Trello require authentication using these keys. Be sure to protect them.
So lets say you want to get information about the user bobtester. We can do something like this:
bob = Member.find("bobtester")
# Print out his name
puts bob.full_name # "Bob Tester"
# Print his bio
puts bob.bio # A wonderfully delightful test user
# How about a list of his boards?
bob.boards
And so much more. Consult the rest of the documentation for more information.
Feel free to peruse and participate in our Trello board. It’s completely open to the public.
Defined Under Namespace
Modules: Authorization, HasActions, JsonUtils Classes: Action, Association, AssociationProxy, Attachment, BasicData, Board, Card, CheckItemState, Checklist, Client, Comment, Configuration, CoverImage, CustomField, CustomFieldItem, CustomFieldOption, Error, Item, Label, LabelName, List, Member, MultiAssociation, Notification, Organization, PluginDatum, Request, Response, TInternet, Token, Webhook
Constant Summary collapse
- API_VERSION =
Version of the Trello API that we use by default.
1
- InvalidAccessToken =
This specific error is thrown when your access token is invalid. You should get a new one.
Class.new(Error)
- ConfigurationError =
This error is thrown when your client has not been configured
Class.new(Error)
Class Method Summary collapse
- .auth_policy ⇒ Object
-
.authorize_url(options = {}) ⇒ Object
Url to token for making authorized requests to the Trello API.
- .client ⇒ Object
- .configuration ⇒ Object
- .configure(&block) ⇒ Object
- .logger ⇒ Object
- .logger=(logger) ⇒ Object
-
.open_authorization_url(options = {}) ⇒ Object
Visit the Trello authorized token page.
-
.open_public_key_url ⇒ Object
Visit the Trello API public key page.
- .open_url(url) ⇒ Object
-
.public_key_url ⇒ Object
Url to Trello API public key page.
- .reset! ⇒ Object
Class Method Details
.auth_policy ⇒ Object
109 |
# File 'lib/trello.rb', line 109 def self.auth_policy; client.auth_policy; end |
.authorize_url(options = {}) ⇒ Object
Url to token for making authorized requests to the Trello API
129 130 131 132 133 134 135 136 137 138 139 140 |
# File 'lib/trello.rb', line 129 def self.( = {}) params = .dup params[:key] ||= configuration.developer_public_key or raise ArgumentError, 'Please configure your Trello public key' params[:name] ||= 'Ruby Trello' params[:scope] ||= 'read,write,account' params[:expiration] ||= 'never' params[:response_type] ||= 'token' uri = Addressable::URI.parse 'https://trello.com/1/authorize' uri.query_values = params uri end |
.client ⇒ Object
96 97 98 |
# File 'lib/trello.rb', line 96 def self.client @client ||= Client.new end |
.configuration ⇒ Object
110 |
# File 'lib/trello.rb', line 110 def self.configuration; client.configuration; end |
.configure(&block) ⇒ Object
100 101 102 103 |
# File 'lib/trello.rb', line 100 def self.configure(&block) reset! client.configure(&block) end |
.logger ⇒ Object
88 89 90 |
# File 'lib/trello.rb', line 88 def self.logger @logger ||= Logger.new(STDOUT) end |
.logger=(logger) ⇒ Object
92 93 94 |
# File 'lib/trello.rb', line 92 def self.logger=(logger) @logger = logger end |
.open_authorization_url(options = {}) ⇒ Object
Visit the Trello authorized token page
152 153 154 |
# File 'lib/trello.rb', line 152 def self.( = {}) open_url () end |
.open_public_key_url ⇒ Object
Visit the Trello API public key page
145 146 147 |
# File 'lib/trello.rb', line 145 def self.open_public_key_url open_url public_key_url end |
.open_url(url) ⇒ Object
157 158 159 160 161 162 163 |
# File 'lib/trello.rb', line 157 def self.open_url(url) require 'launchy' Launchy.open(url.to_s) rescue LoadError warn 'Please install the launchy gem to open the url automatically.' url end |
.public_key_url ⇒ Object
Url to Trello API public key page
113 114 115 |
# File 'lib/trello.rb', line 113 def self.public_key_url 'https://trello.com/app-key' end |
.reset! ⇒ Object
105 106 107 |
# File 'lib/trello.rb', line 105 def self.reset! @client = nil end |