module Shirtsio::Request

Public Instance Methods

get(path, options = {}, headers = {}) click to toggle source
# File lib/shirtsio/request.rb, line 3
def get(path, options = {}, headers = {})
  request(:get, path, options, headers)
end
post(path, options = {}, headers = {}) click to toggle source
# File lib/shirtsio/request.rb, line 7
def post(path, options = {}, headers = {})
  request(:post, path, options, headers)
end

Private Instance Methods

request(method, path, options, headers) click to toggle source

Perform an HTTP request

# File lib/shirtsio/request.rb, line 13
def request(method, path, options, headers)
  headers.merge!({
    'User-Agent' => user_agent
  })

  options.merge!({
    :api_key => api_key
  })

  response = connection.send(method) do |request|
    request.url "#{endpoint}#{path}", options
    request.body = options
    request.headers = headers
  end
  Shirtsio::Utils.handle_api_error(response) if response.status != 200

  Shirtsio::Utils.parse_json(response.body)[:result]
end