def api(verb, api_path, options={})
      count   = 0
      retries = 3
      ps_url  = base_uri + api_path
      options = options.merge(headers)
      begin
        HTTParty.send(verb, ps_url, options)
      rescue Net::ReadTimeout, Net::OpenTimeout
        if count < retries
          count += 1
          retry
        else
          { error: "no response (timeout) from URL: #{url}"  }
        end
      end
    end
def api(verb, api_path, options={})
      count   = 0
      retries = 3
      ps_url  = base_uri + api_path
      options = options.merge(headers)
      begin
        HTTParty.send(verb, ps_url, options)
      rescue Net::ReadTimeout, Net::OpenTimeout
        if count < retries
          count += 1
          retry
        else
          { error: "no response (timeout) from URL: #{url}"  }
        end
      end
    end
Direct API access
 @param verb [Symbol] hmtl verbs (:delete, :get, :patch, :post, :put)
 @param options [Hash] allowed keys are {query: {}, body: {}} - uses :query for gets, and use :body for put and post
 @return [HTTParty] - useful things to access include: obj.parsed_response (to access returned data) & obj.code to be sure the response was successful "200"