ruby-trello 1.1.3 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +3 -1
- data/lib/trello/action.rb +17 -5
- data/lib/trello/attachment.rb +15 -0
- data/lib/trello/authorization.rb +9 -9
- data/lib/trello/basic_data.rb +2 -2
- data/lib/trello/board.rb +90 -18
- data/lib/trello/card.rb +127 -18
- data/lib/trello/checklist.rb +29 -8
- data/lib/trello/configuration.rb +8 -8
- data/lib/trello/has_actions.rb +1 -1
- data/lib/trello/item.rb +13 -2
- data/lib/trello/item_state.rb +8 -1
- data/lib/trello/label.rb +5 -0
- data/lib/trello/label_name.rb +8 -3
- data/lib/trello/list.rb +23 -9
- data/lib/trello/member.rb +26 -9
- data/lib/trello/net.rb +5 -5
- data/lib/trello/notification.rb +15 -2
- data/lib/trello/organization.rb +12 -1
- data/lib/trello/token.rb +13 -2
- data/lib/trello/webhook.rb +40 -12
- data/spec/association_spec.rb +5 -5
- data/spec/basic_auth_policy_spec.rb +2 -2
- data/spec/board_spec.rb +45 -14
- data/spec/card_spec.rb +29 -29
- data/spec/checklist_spec.rb +16 -16
- data/spec/client_spec.rb +14 -14
- data/spec/configuration_spec.rb +25 -25
- data/spec/integration/how_to_authorize_spec.rb +5 -5
- data/spec/integration/how_to_use_boards_spec.rb +5 -5
- data/spec/list_spec.rb +10 -10
- data/spec/member_spec.rb +7 -7
- data/spec/oauth_policy_spec.rb +4 -4
- data/spec/organization_spec.rb +1 -1
- data/spec/spec_helper.rb +2 -1
- data/spec/token_spec.rb +1 -1
- data/spec/webhook_spec.rb +4 -4
- metadata +2 -2
data/lib/trello/checklist.rb
CHANGED
@@ -1,10 +1,31 @@
|
|
1
1
|
module Trello
|
2
2
|
# A Checklist holds items which are like a "task" list. Checklists are linked to a card.
|
3
|
+
#
|
4
|
+
# @!attribute [r] id
|
5
|
+
# @return [String]
|
6
|
+
# @!attribute [rw] name
|
7
|
+
# @return [String]
|
8
|
+
# @!attribute [r] description
|
9
|
+
# @return [String]
|
10
|
+
# @!attribute [r] closed
|
11
|
+
# @return [Boolean]
|
12
|
+
# @!attribute [rw] position
|
13
|
+
# @return [Object]
|
14
|
+
# @!attribute [r] url
|
15
|
+
# @return [String]
|
16
|
+
# @!attribute [r] check_items
|
17
|
+
# @return [Object]
|
18
|
+
# @!attribute [r] board_id
|
19
|
+
# @return [String] A 24-character hex string
|
20
|
+
# @!attribute [r] list_id
|
21
|
+
# @return [String] A 24-character hex string
|
22
|
+
# @!attribute [r] member_ids
|
23
|
+
# @return [Array<String>] An array of 24-character hex strings
|
3
24
|
class Checklist < BasicData
|
4
25
|
register_attributes :id, :name, :description, :closed, :position, :url, :check_items, :board_id, :list_id, :member_ids,
|
5
|
-
:
|
26
|
+
readonly: [:id, :description, :closed, :url, :check_items, :board_id, :list_id, :member_ids]
|
6
27
|
validates_presence_of :id, :board_id, :list_id
|
7
|
-
validates_length_of :name, :
|
28
|
+
validates_length_of :name, in: 1..16384
|
8
29
|
|
9
30
|
class << self
|
10
31
|
# Locate a specific checklist by its id.
|
@@ -47,13 +68,13 @@ module Trello
|
|
47
68
|
return update! if id
|
48
69
|
|
49
70
|
client.post("/checklists", {
|
50
|
-
:
|
51
|
-
:
|
71
|
+
name: name,
|
72
|
+
idBoard: board_id
|
52
73
|
}).json_into(self)
|
53
74
|
end
|
54
75
|
|
55
76
|
def update!
|
56
|
-
client.put("/checklists/#{id}", {:
|
77
|
+
client.put("/checklists/#{id}", {name: name, pos: position}).json_into(self)
|
57
78
|
end
|
58
79
|
|
59
80
|
# Return a list of items on the checklist.
|
@@ -64,10 +85,10 @@ module Trello
|
|
64
85
|
end
|
65
86
|
|
66
87
|
# Return a reference to the board the checklist is on.
|
67
|
-
one :board, :
|
88
|
+
one :board, path: :checklists, using: :board_id
|
68
89
|
|
69
90
|
# Return a reference to the list the checklist is on.
|
70
|
-
one :list, :
|
91
|
+
one :list, path: :lists, using: :list_id
|
71
92
|
|
72
93
|
# Return a list of members active in this checklist.
|
73
94
|
def members
|
@@ -79,7 +100,7 @@ module Trello
|
|
79
100
|
|
80
101
|
# Add an item to the checklist
|
81
102
|
def add_item(name, checked=false, position='bottom')
|
82
|
-
client.post("/checklists/#{id}/checkItems", {:
|
103
|
+
client.post("/checklists/#{id}/checkItems", {name: name, checked: checked, pos: position})
|
83
104
|
end
|
84
105
|
|
85
106
|
# Delete a checklist item
|
data/lib/trello/configuration.rb
CHANGED
@@ -48,19 +48,19 @@ module Trello
|
|
48
48
|
|
49
49
|
def oauth_credentials
|
50
50
|
{
|
51
|
-
:
|
52
|
-
:
|
53
|
-
:
|
54
|
-
:
|
55
|
-
:
|
56
|
-
:
|
51
|
+
consumer_key: consumer_key,
|
52
|
+
consumer_secret: consumer_secret,
|
53
|
+
oauth_token: oauth_token,
|
54
|
+
oauth_token_secret: oauth_token_secret,
|
55
|
+
return_url: return_url,
|
56
|
+
callback: callback,
|
57
57
|
}.delete_if { |key, value| value.nil? }
|
58
58
|
end
|
59
59
|
|
60
60
|
def basic_credentials
|
61
61
|
{
|
62
|
-
:
|
63
|
-
:
|
62
|
+
developer_public_key: developer_public_key,
|
63
|
+
member_token: member_token
|
64
64
|
}
|
65
65
|
end
|
66
66
|
|
data/lib/trello/has_actions.rb
CHANGED
@@ -2,7 +2,7 @@ module Trello
|
|
2
2
|
module HasActions
|
3
3
|
# Returns a list of the actions associated with this object.
|
4
4
|
def actions(options = {})
|
5
|
-
actions = client.get("#{request_prefix}/actions", { :
|
5
|
+
actions = client.get("#{request_prefix}/actions", { filter: :all }.merge(options)).json_into(Action)
|
6
6
|
MultiAssociation.new(self, actions).proxy
|
7
7
|
end
|
8
8
|
end
|
data/lib/trello/item.rb
CHANGED
@@ -1,7 +1,18 @@
|
|
1
1
|
module Trello
|
2
2
|
# An Item is a basic task that can be checked off and marked as completed.
|
3
|
+
#
|
4
|
+
# @!attribute [r] id
|
5
|
+
# @return [String]
|
6
|
+
# @!attribute [r] name
|
7
|
+
# @return [String]
|
8
|
+
# @!attribute [r] type
|
9
|
+
# @return [Object]
|
10
|
+
# @!attribute [r] state
|
11
|
+
# @return [Object]
|
12
|
+
# @!attribute [r] pos
|
13
|
+
# @return [Object]
|
3
14
|
class Item < BasicData
|
4
|
-
register_attributes :id, :name, :type, :state, :pos, :
|
15
|
+
register_attributes :id, :name, :type, :state, :pos, readonly: [ :id, :name, :type, :state, :pos ]
|
5
16
|
validates_presence_of :id, :type
|
6
17
|
|
7
18
|
# Updates the fields of an item.
|
@@ -17,4 +28,4 @@ module Trello
|
|
17
28
|
self
|
18
29
|
end
|
19
30
|
end
|
20
|
-
end
|
31
|
+
end
|
data/lib/trello/item_state.rb
CHANGED
@@ -1,7 +1,14 @@
|
|
1
1
|
module Trello
|
2
2
|
# Represents the state of an item.
|
3
|
+
#
|
4
|
+
# @!attribute [r] id
|
5
|
+
# @return [String]
|
6
|
+
# @!attribute [r] state
|
7
|
+
# @return [Object]
|
8
|
+
# @!attribute [r] item_id
|
9
|
+
# @return [String]
|
3
10
|
class CheckItemState < BasicData
|
4
|
-
register_attributes :id, :state, :item_id, :
|
11
|
+
register_attributes :id, :state, :item_id, readonly: [ :id, :state, :item_id ]
|
5
12
|
validates_presence_of :id, :item_id
|
6
13
|
|
7
14
|
# Update the fields of an item state.
|
data/lib/trello/label.rb
CHANGED
data/lib/trello/label_name.rb
CHANGED
@@ -2,7 +2,7 @@ module Trello
|
|
2
2
|
|
3
3
|
# A colored Label attached to a card
|
4
4
|
class LabelName < BasicData
|
5
|
-
register_attributes :yellow, :red, :orange, :green, :purple, :blue
|
5
|
+
register_attributes :yellow, :red, :orange, :green, :purple, :blue, :sky, :pink, :lime, :black
|
6
6
|
|
7
7
|
# Update the fields of a label.
|
8
8
|
#
|
@@ -15,12 +15,17 @@ module Trello
|
|
15
15
|
attributes[:green] = fields['green']
|
16
16
|
attributes[:purple] = fields['purple']
|
17
17
|
attributes[:blue] = fields['blue']
|
18
|
+
attributes[:sky] = fields['sky']
|
19
|
+
attributes[:pink] = fields['pink']
|
20
|
+
attributes[:lime] = fields['lime']
|
21
|
+
attributes[:black] = fields['black']
|
22
|
+
|
18
23
|
self
|
19
24
|
end
|
20
25
|
|
21
|
-
one :board, :
|
26
|
+
one :board, path: :boards, using: :board_id
|
22
27
|
|
23
|
-
many :cards, :
|
28
|
+
many :cards, filter: :all
|
24
29
|
|
25
30
|
end
|
26
31
|
end
|
data/lib/trello/list.rb
CHANGED
@@ -1,14 +1,28 @@
|
|
1
1
|
module Trello
|
2
2
|
# A List is a container which holds cards. Lists are items on a board.
|
3
|
+
#
|
4
|
+
# @!attribute [r] id
|
5
|
+
# @return [String]
|
6
|
+
# @!attribute [rw] name
|
7
|
+
# @return [String]
|
8
|
+
# @!attribute [rw] closed
|
9
|
+
# @return [Boolean]
|
10
|
+
# @!attribute [r] board_id
|
11
|
+
# @return [String] A 24-character hex string
|
12
|
+
# @!attribute [rw] pos
|
13
|
+
# @return [Object]
|
3
14
|
class List < BasicData
|
4
|
-
register_attributes :id, :name, :closed, :board_id, :pos, :
|
15
|
+
register_attributes :id, :name, :closed, :board_id, :pos, readonly: [ :id, :board_id ]
|
5
16
|
validates_presence_of :id, :name, :board_id
|
6
|
-
validates_length_of :name, :
|
17
|
+
validates_length_of :name, in: 1..16384
|
7
18
|
|
8
19
|
include HasActions
|
9
20
|
|
10
21
|
class << self
|
11
22
|
# Finds a specific list, given an id.
|
23
|
+
#
|
24
|
+
# @param [id] id the list's ID on Trello (24-character hex string).
|
25
|
+
# @param [Hash] params
|
12
26
|
def find(id, params = {})
|
13
27
|
client.find(:list, id, params)
|
14
28
|
end
|
@@ -37,16 +51,16 @@ module Trello
|
|
37
51
|
return update! if id
|
38
52
|
|
39
53
|
client.post("/lists", {
|
40
|
-
:
|
41
|
-
:
|
42
|
-
:
|
54
|
+
name: name,
|
55
|
+
closed: closed || false,
|
56
|
+
idBoard: board_id
|
43
57
|
}).json_into(self)
|
44
58
|
end
|
45
59
|
|
46
60
|
def update!
|
47
61
|
client.put("/lists/#{id}", {
|
48
|
-
:
|
49
|
-
:
|
62
|
+
name: name,
|
63
|
+
closed: closed
|
50
64
|
})
|
51
65
|
end
|
52
66
|
|
@@ -65,14 +79,14 @@ module Trello
|
|
65
79
|
end
|
66
80
|
|
67
81
|
# Return the board the list is connected to.
|
68
|
-
one :board, :
|
82
|
+
one :board, path: :boards, using: :board_id
|
69
83
|
|
70
84
|
# Returns all the cards on this list.
|
71
85
|
#
|
72
86
|
# The options hash may have a filter key which can have its value set as any
|
73
87
|
# of the following values:
|
74
88
|
# :filter => [ :none, :open, :closed, :all ] # default :open
|
75
|
-
many :cards, :
|
89
|
+
many :cards, filter: :open
|
76
90
|
|
77
91
|
# :nodoc:
|
78
92
|
def request_prefix
|
data/lib/trello/member.rb
CHANGED
@@ -1,10 +1,27 @@
|
|
1
1
|
module Trello
|
2
2
|
# A Member is a user of the Trello service.
|
3
|
+
#
|
4
|
+
# @!attribute [r] id
|
5
|
+
# @return [String]
|
6
|
+
# @!attribute [r] username
|
7
|
+
# @return [String]
|
8
|
+
# @!attribute [rw] email
|
9
|
+
# @return [String]
|
10
|
+
# @!attribute [rw] full_name
|
11
|
+
# @return [String]
|
12
|
+
# @!attribute [rw] initials
|
13
|
+
# @return [String]
|
14
|
+
# @!attribute [r] avatar_id
|
15
|
+
# @return [String]
|
16
|
+
# @!attribute [rw] bio
|
17
|
+
# @return [String]
|
18
|
+
# @!attribute [r] url
|
19
|
+
# @return [String]
|
3
20
|
class Member < BasicData
|
4
|
-
register_attributes :id, :username, :email, :full_name, :initials, :avatar_id, :bio, :url, :
|
21
|
+
register_attributes :id, :username, :email, :full_name, :initials, :avatar_id, :bio, :url, readonly: [ :id, :username, :avatar_id, :url ]
|
5
22
|
validates_presence_of :id, :username
|
6
|
-
validates_length_of :full_name, :
|
7
|
-
validates_length_of :bio, :
|
23
|
+
validates_length_of :full_name, minimum: 4
|
24
|
+
validates_length_of :bio, maximum: 16384
|
8
25
|
|
9
26
|
include HasActions
|
10
27
|
|
@@ -38,7 +55,7 @@ module Trello
|
|
38
55
|
# Valid values for options are:
|
39
56
|
# :large (170x170)
|
40
57
|
# :small (30x30)
|
41
|
-
def avatar_url(options = { :
|
58
|
+
def avatar_url(options = { size: :large })
|
42
59
|
size = options[:size] == :small ? 30 : 170
|
43
60
|
"https://trello-avatars.s3.amazonaws.com/#{avatar_id}/#{size}.png"
|
44
61
|
end
|
@@ -50,7 +67,7 @@ module Trello
|
|
50
67
|
# :filter => [ :none, :members, :organization, :public, :open, :closed, :all ] # default: :all
|
51
68
|
# i.e.,
|
52
69
|
# me.boards(:filter => :closed) # retrieves all closed boards
|
53
|
-
many :boards, :
|
70
|
+
many :boards, filter: :all
|
54
71
|
|
55
72
|
# Returns a list of cards the member is assigned to.
|
56
73
|
#
|
@@ -59,7 +76,7 @@ module Trello
|
|
59
76
|
# :filter => [ :none, :open, :closed, :all ] # default :open
|
60
77
|
# i.e.,
|
61
78
|
# me.cards(:filter => :closed) # retrieves all closed cards
|
62
|
-
many :cards, :
|
79
|
+
many :cards, filter: :open
|
63
80
|
|
64
81
|
# Returns a list of the organizations this member is a part of.
|
65
82
|
#
|
@@ -68,7 +85,7 @@ module Trello
|
|
68
85
|
# :filter => [ :none, :members, :public, :all ] # default: all
|
69
86
|
# i.e.,
|
70
87
|
# me.organizations(:filter => :public) # retrieves all public organizations
|
71
|
-
many :organizations, :
|
88
|
+
many :organizations, filter: :all
|
72
89
|
|
73
90
|
# Returns a list of notifications for the user
|
74
91
|
many :notifications
|
@@ -82,8 +99,8 @@ module Trello
|
|
82
99
|
|
83
100
|
def update!
|
84
101
|
client.put(request_prefix, {
|
85
|
-
:
|
86
|
-
:
|
102
|
+
fullName: full_name,
|
103
|
+
bio: bio
|
87
104
|
}).json_into(self)
|
88
105
|
end
|
89
106
|
|
data/lib/trello/net.rb
CHANGED
@@ -26,11 +26,11 @@ module Trello
|
|
26
26
|
def execute_core(request)
|
27
27
|
RestClient.proxy = ENV['HTTP_PROXY'] if ENV['HTTP_PROXY']
|
28
28
|
RestClient::Request.execute(
|
29
|
-
:
|
30
|
-
:
|
31
|
-
:
|
32
|
-
:
|
33
|
-
:
|
29
|
+
method: request.verb,
|
30
|
+
url: request.uri.to_s,
|
31
|
+
headers: request.headers,
|
32
|
+
payload: request.body,
|
33
|
+
timeout: 10
|
34
34
|
)
|
35
35
|
end
|
36
36
|
end
|
data/lib/trello/notification.rb
CHANGED
@@ -1,7 +1,20 @@
|
|
1
1
|
module Trello
|
2
|
+
|
3
|
+
# @!attribute [r] id
|
4
|
+
# @return [String]
|
5
|
+
# @!attribute [rw] unread
|
6
|
+
# @return [Boolean]
|
7
|
+
# @!attribute [r] type
|
8
|
+
# @return [Object]
|
9
|
+
# @!attribute [r] date
|
10
|
+
# @return [Datetime]
|
11
|
+
# @!attribute [rw] data
|
12
|
+
# @return [Object]
|
13
|
+
# @!attribute [r] member_creator_id,
|
14
|
+
# @return [String]
|
2
15
|
class Notification < BasicData
|
3
16
|
register_attributes :id, :unread, :type, :date, :data, :member_creator_id,
|
4
|
-
:
|
17
|
+
read_only: [ :id, :unread, :type, :date, :member_creator_id ]
|
5
18
|
validates_presence_of :id, :type, :date, :member_creator_id
|
6
19
|
|
7
20
|
class << self
|
@@ -23,7 +36,7 @@ module Trello
|
|
23
36
|
|
24
37
|
alias :unread? :unread
|
25
38
|
|
26
|
-
one :member_creator, :
|
39
|
+
one :member_creator, path: :members, via: Member, using: :member_creator_id
|
27
40
|
|
28
41
|
def board
|
29
42
|
client.get("/notifications/#{id}/board").json_into(Board)
|
data/lib/trello/organization.rb
CHANGED
@@ -1,8 +1,19 @@
|
|
1
1
|
module Trello
|
2
2
|
# Organizations are useful for linking members together.
|
3
|
+
#
|
4
|
+
# @!attribute [r] id
|
5
|
+
# @return [String]
|
6
|
+
# @!attribute [r] name
|
7
|
+
# @return [String]
|
8
|
+
# @!attribute [r] display_name
|
9
|
+
# @return [String]
|
10
|
+
# @!attribute [r] description
|
11
|
+
# @return [String]
|
12
|
+
# @!attribute [r] url
|
13
|
+
# @return [String]
|
3
14
|
class Organization < BasicData
|
4
15
|
register_attributes :id, :name, :display_name, :description, :url,
|
5
|
-
:
|
16
|
+
readonly: [ :id, :name, :display_name, :description, :url ]
|
6
17
|
validates_presence_of :id, :name
|
7
18
|
|
8
19
|
include HasActions
|
data/lib/trello/token.rb
CHANGED
@@ -1,7 +1,18 @@
|
|
1
1
|
module Trello
|
2
|
+
|
3
|
+
# @!attribute [r] id
|
4
|
+
# @return [String]
|
5
|
+
# @!attribute [r] member_id
|
6
|
+
# @return [String]
|
7
|
+
# @!attribute [r] created_at
|
8
|
+
# @return [Datetime]
|
9
|
+
# @!attribute [r] permissions
|
10
|
+
# @return [Object]
|
11
|
+
# @!attribute [r] webhooks
|
12
|
+
# @return [Object]
|
2
13
|
class Token < BasicData
|
3
14
|
register_attributes :id, :member_id, :created_at, :permissions, :webhooks,
|
4
|
-
:
|
15
|
+
readonly: [ :id, :member_id, :created_at, :permissions, :webhooks ]
|
5
16
|
|
6
17
|
class << self
|
7
18
|
# Finds a token
|
@@ -20,6 +31,6 @@ module Trello
|
|
20
31
|
end
|
21
32
|
|
22
33
|
# Returns a reference to the user who authorized the token.
|
23
|
-
one :member, :
|
34
|
+
one :member, path: :members, using: :member_id
|
24
35
|
end
|
25
36
|
end
|
data/lib/trello/webhook.rb
CHANGED
@@ -1,10 +1,21 @@
|
|
1
1
|
module Trello
|
2
|
-
# A webhook is
|
2
|
+
# A webhook is a URL called each time a specified model is updated
|
3
|
+
#
|
4
|
+
# @!attribute [r] id
|
5
|
+
# @return [String]
|
6
|
+
# @!attribute [r] description
|
7
|
+
# @return [String]
|
8
|
+
# @!attribute [r] id_model
|
9
|
+
# @return [String] A 24-character hex string
|
10
|
+
# @!attribute [r] callback_url
|
11
|
+
# @return [String]
|
12
|
+
# @!attribute [r] active
|
13
|
+
# @return [Boolean]
|
3
14
|
class Webhook < BasicData
|
4
15
|
register_attributes :id, :description, :id_model, :callback_url, :active,
|
5
|
-
:
|
16
|
+
readonly: [ :id ]
|
6
17
|
validates_presence_of :id, :id_model, :callback_url
|
7
|
-
validates_length_of :description, :
|
18
|
+
validates_length_of :description, in: 1..16384
|
8
19
|
|
9
20
|
class << self
|
10
21
|
# Find a specific webhook by its ID.
|
@@ -18,9 +29,14 @@ module Trello
|
|
18
29
|
# Create a new webhook and save it to Trello.
|
19
30
|
#
|
20
31
|
# @param [Hash] options
|
32
|
+
#
|
21
33
|
# @option options [String] :description (optional) A string with a length from 0 to 16384
|
22
|
-
# @option options [String] :callback_url (required) A valid URL that is
|
34
|
+
# @option options [String] :callback_url (required) A valid URL that is
|
35
|
+
# reachable with a HEAD request
|
23
36
|
# @option options [String] :id_model (required) id of the model that should be hooked
|
37
|
+
#
|
38
|
+
# @raise [Trello::Error] if the Webhook could not be created.
|
39
|
+
#
|
24
40
|
# @return [Trello::Webhook]
|
25
41
|
def create(options)
|
26
42
|
client.create(:webhook,
|
@@ -30,7 +46,7 @@ module Trello
|
|
30
46
|
end
|
31
47
|
end
|
32
48
|
|
33
|
-
# return [Trello::Webhook] self
|
49
|
+
# @return [Trello::Webhook] self
|
34
50
|
def update_fields(fields)
|
35
51
|
attributes[:id] = fields['id']
|
36
52
|
attributes[:description] = fields['description']
|
@@ -40,27 +56,39 @@ module Trello
|
|
40
56
|
self
|
41
57
|
end
|
42
58
|
|
59
|
+
# Save the webhook.
|
60
|
+
#
|
61
|
+
# @raise [Trello::Error] if the Webhook could not be saved.
|
62
|
+
#
|
63
|
+
# @return [String] the JSON representation of the saved webhook.
|
43
64
|
def save
|
44
65
|
# If we have an id, just update our fields.
|
45
66
|
return update! if id
|
46
67
|
|
47
68
|
client.post("/webhooks", {
|
48
|
-
:
|
49
|
-
:
|
50
|
-
:
|
69
|
+
description: description,
|
70
|
+
idModel: id_model,
|
71
|
+
callbackURL: callback_url
|
51
72
|
}).json_into(self)
|
52
73
|
end
|
53
74
|
|
75
|
+
# Update the webhook.
|
76
|
+
#
|
77
|
+
# @raise [Trello::Error] if the Webhook could not be saved.
|
78
|
+
#
|
79
|
+
# @return [String] the JSON representation of the updated webhook.
|
54
80
|
def update!
|
55
81
|
client.put("/webhooks/#{id}", {
|
56
|
-
:
|
57
|
-
:
|
58
|
-
:
|
59
|
-
:
|
82
|
+
description: description,
|
83
|
+
idModel: id_model,
|
84
|
+
callbackURL: callback_url,
|
85
|
+
active: active
|
60
86
|
})
|
61
87
|
end
|
62
88
|
|
63
89
|
# Delete this webhook
|
90
|
+
#
|
91
|
+
# @return [String] the JSON response from the Trello API
|
64
92
|
def delete
|
65
93
|
client.delete("/webhooks/#{id}")
|
66
94
|
end
|