class Sendgrid::API::REST::Resource
Constants
- ENDPOINT
Attributes
key[R]
user[R]
Public Class Methods
new(user, key)
click to toggle source
# File lib/sendgrid/api/rest/resource.rb, line 14 def initialize(user, key) @user = user @key = key end
Public Instance Methods
post(url, params = {})
click to toggle source
# File lib/sendgrid/api/rest/resource.rb, line 19 def post(url, params = {}) request(:post, url, params) end
Private Instance Methods
authentication_params()
click to toggle source
# File lib/sendgrid/api/rest/resource.rb, line 51 def authentication_params { :api_user => @user, :api_key => @key } end
connection()
click to toggle source
# File lib/sendgrid/api/rest/resource.rb, line 47 def connection @connection ||= Faraday.new(ENDPOINT, :builder => middleware) end
middleware()
click to toggle source
# File lib/sendgrid/api/rest/resource.rb, line 32 def middleware @middleware ||= Faraday::RackBuilder.new do |builder| # checks for files in the payload, otherwise leaves everything untouched builder.request :multipart # form-encode POST params builder.request :url_encoded # Parse response errors builder.use Response::ParseError # Parse JSON response bodies builder.use Response::ParseJson # Set Faraday's HTTP adapter builder.adapter Faraday.default_adapter end end
request(method, url, params = {})
click to toggle source
# File lib/sendgrid/api/rest/resource.rb, line 25 def request(method, url, params = {}) params = params.merge(authentication_params) connection.send(method, url, params) rescue Faraday::Error::ClientError, JSON::ParserError raise Errors::Unknown end