Class: Vapid::API
Overview
This is a big ol’ placeholder class TODO: Think through an API
Class Method Summary collapse
Instance Method Summary collapse
- #create_site(site_name) ⇒ Object
-
#initialize(token = nil) ⇒ API
constructor
A new instance of API.
- #login(email, password) ⇒ Object
- #presigned_posts(site_id, manifest) ⇒ Object
- #update_site(site_id, params) ⇒ Object
Constructor Details
#initialize(token = nil) ⇒ API
Returns a new instance of API.
8 9 10 |
# File 'lib/vapid/api.rb', line 8 def initialize(token = nil) @conn = conn(token) end |
Class Method Details
.base_uri ⇒ Object
17 18 19 |
# File 'lib/vapid/api.rb', line 17 def base_uri URI.parse(self.base_url).host end |
.base_url ⇒ Object
13 14 15 |
# File 'lib/vapid/api.rb', line 13 def base_url ENV["API_URL"] || "https://api.vapid.com" end |
.version ⇒ Object
21 22 23 |
# File 'lib/vapid/api.rb', line 21 def version 1 end |
.version_url ⇒ Object
25 26 27 |
# File 'lib/vapid/api.rb', line 25 def version_url "#{base_url}/v#{version}" end |
Instance Method Details
#create_site(site_name) ⇒ Object
35 36 37 |
# File 'lib/vapid/api.rb', line 35 def create_site(site_name) post "sites", name: site_name end |
#login(email, password) ⇒ Object
30 31 32 33 |
# File 'lib/vapid/api.rb', line 30 def login(email, password) basic_auth_conn = conn(email, password) basic_auth_conn.get "auth/login" end |
#presigned_posts(site_id, manifest) ⇒ Object
43 44 45 |
# File 'lib/vapid/api.rb', line 43 def presigned_posts(site_id, manifest) post "sites/#{site_id}/presigned_posts", manifest: manifest end |
#update_site(site_id, params) ⇒ Object
39 40 41 |
# File 'lib/vapid/api.rb', line 39 def update_site(site_id, params) patch "sites/#{site_id}", params end |