Class: Ann::Client
- Inherits:
-
Object
- Object
- Ann::Client
- Defined in:
- lib/ann/client.rb
Constant Summary collapse
- FORMATS =
{ json: "application/json", gzip: "application/x-gzip" }.freeze
Instance Method Summary collapse
- #add_user_roles(email, roles) ⇒ Object
- #certificate_templates ⇒ Object
- #get_user_roles(email) ⇒ Object
-
#initialize(options = {}) ⇒ Client
constructor
A new instance of Client.
-
#remove_user_roles(email, roles) ⇒ Object
rest-client doesn’t allow for delete requests to have a body, so this one is a bit ugly.
Constructor Details
#initialize(options = {}) ⇒ Client
Returns a new instance of Client.
11 12 13 14 15 |
# File 'lib/ann/client.rb', line 11 def initialize( = {}) @access_key = .fetch(:access_key) @secret_key = .fetch(:secret_key) @url = .fetch(:url) end |
Instance Method Details
#add_user_roles(email, roles) ⇒ Object
25 26 27 28 29 30 31 |
# File 'lib/ann/client.rb', line 25 def add_user_roles(email, roles) path = "/permissions/user?email=#{email}" headers = { accept: FORMATS[:json] } payload = { roles: roles } response = resource[path].put(payload, headers) parse_json(response.body) end |
#certificate_templates ⇒ Object
50 51 52 53 54 55 56 |
# File 'lib/ann/client.rb', line 50 def certificate_templates path = "/certificates/templates" headers = { accept: FORMATS[:json] } response = resource[path].get(headers) parse_json(response.body) end |
#get_user_roles(email) ⇒ Object
17 18 19 20 21 22 23 |
# File 'lib/ann/client.rb', line 17 def get_user_roles(email) path = "/permissions/user?email=#{email}" headers = { accept: FORMATS[:json] } response = resource[path].get(headers) parse_json(response.body) end |
#remove_user_roles(email, roles) ⇒ Object
rest-client doesn’t allow for delete requests to have a body, so this one is a bit ugly
35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/ann/client.rb', line 35 def remove_user_roles(email, roles) path = "/permissions/user?email=#{email}" headers = { accept: FORMATS[:json] } response = RestClient::Request.execute( method: :delete, user: @access_key, password: @secret_key, url: @url + path, headers: headers, payload: { roles: roles } ) parse_json(response.body) end |