Class: Praxicraft::Resources::Invites
- Inherits:
-
Object
- Object
- Praxicraft::Resources::Invites
- Defined in:
- lib/praxicraft/resources/invites.rb
Instance Method Summary collapse
- #bulk_create(assessment, candidates, args = nil, **kwargs) ⇒ Object
- #cancel(invite_token) ⇒ Object
- #create(assessment, args = nil, **kwargs) ⇒ Object
-
#initialize(client) ⇒ Invites
constructor
A new instance of Invites.
- #list(params = nil) ⇒ Object
- #remind(invite_token) ⇒ Object
- #retrieve(invite_token) ⇒ Object
Constructor Details
#initialize(client) ⇒ Invites
Returns a new instance of Invites.
6 7 8 |
# File 'lib/praxicraft/resources/invites.rb', line 6 def initialize(client) @client = client end |
Instance Method Details
#bulk_create(assessment, candidates, args = nil, **kwargs) ⇒ Object
30 31 32 33 34 |
# File 'lib/praxicraft/resources/invites.rb', line 30 def bulk_create(assessment, candidates, args = nil, **kwargs) key = Client.path_segment(assessment, "assessment") body = { "candidates" => candidates }.merge(normalize(args || kwargs) || {}) @client.post("/assessments/#{key}/invites/bulk/", body) end |
#cancel(invite_token) ⇒ Object
41 42 43 44 |
# File 'lib/praxicraft/resources/invites.rb', line 41 def cancel(invite_token) token = Client.path_segment(invite_token, "invite_token") @client.delete("/invites/#{token}/") end |
#create(assessment, args = nil, **kwargs) ⇒ Object
19 20 21 22 23 24 25 26 27 28 |
# File 'lib/praxicraft/resources/invites.rb', line 19 def create(assessment, args = nil, **kwargs) body = normalize(args || kwargs) || {} email = body["email"] if email.nil? || email.to_s.strip.empty? raise APIError.new("email is required", "INVALID_ARGUMENT") end key = Client.path_segment(assessment, "assessment") @client.post("/assessments/#{key}/invites/", body) end |
#list(params = nil) ⇒ Object
10 11 12 |
# File 'lib/praxicraft/resources/invites.rb', line 10 def list(params = nil) @client.get("/invites/", normalize(params)) end |
#remind(invite_token) ⇒ Object
36 37 38 39 |
# File 'lib/praxicraft/resources/invites.rb', line 36 def remind(invite_token) token = Client.path_segment(invite_token, "invite_token") @client.post("/invites/#{token}/remind/") end |
#retrieve(invite_token) ⇒ Object
14 15 16 17 |
# File 'lib/praxicraft/resources/invites.rb', line 14 def retrieve(invite_token) token = Client.path_segment(invite_token, "invite_token") @client.get("/invites/#{token}/") end |