Class: Vapid::API

Inherits:
Object show all
Defined in:
lib/vapid/api.rb

Overview

This is a big ol’ placeholder class TODO: Think through an API

Class Method Summary collapse

Instance Method Summary collapse

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_uriObject



17
18
19
# File 'lib/vapid/api.rb', line 17

def base_uri
  URI.parse(self.base_url).host
end

.base_urlObject



13
14
15
# File 'lib/vapid/api.rb', line 13

def base_url
  ENV["API_URL"] || "https://api.vapid.com"
end

.versionObject



21
22
23
# File 'lib/vapid/api.rb', line 21

def version
  1
end

.version_urlObject



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 (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