module SendGrid4r::REST::Blocks

SendGrid Web API v3 Blocks

Constants

Block

Public Class Methods

create_block(resp) click to toggle source
# File lib/sendgrid4r/rest/blocks.rb, line 22
def self.create_block(resp)
  return resp if resp.nil?
  created = Time.at(resp['created']) unless resp['created'].nil?
  Block.new(created, resp['email'], resp['reason'], resp['status'])
end
create_blocks(resp) click to toggle source
# File lib/sendgrid4r/rest/blocks.rb, line 17
def self.create_blocks(resp)
  return resp if resp.nil?
  resp.map { |block| Blocks.create_block(block) }
end
url(email = nil) click to toggle source
# File lib/sendgrid4r/rest/blocks.rb, line 11
def self.url(email = nil)
  url = "#{BASE_URL}/suppression/blocks"
  url = "#{url}/#{email}" unless email.nil?
  url
end

Public Instance Methods

delete_block(email:, &block) click to toggle source
# File lib/sendgrid4r/rest/blocks.rb, line 54
def delete_block(email:, &block)
  delete(@auth, Blocks.url(email), &block)
end
delete_blocks(delete_all: nil, emails: nil, &block) click to toggle source
# File lib/sendgrid4r/rest/blocks.rb, line 40
def delete_blocks(delete_all: nil, emails: nil, &block)
  if delete_all
    payload = { delete_all: delete_all }
  else
    payload = { emails: emails }
  end
  delete(@auth, Blocks.url, nil, payload, &block)
end
get_block(email:, &block) click to toggle source
# File lib/sendgrid4r/rest/blocks.rb, line 49
def get_block(email:, &block)
  resp = get(@auth, Blocks.url(email), &block)
  finish(resp, @raw_resp) { |r| Blocks.create_blocks(r) }
end
get_blocks( start_time: nil, end_time: nil, limit: nil, offset: nil, &block ) click to toggle source
# File lib/sendgrid4r/rest/blocks.rb, line 28
def get_blocks(
  start_time: nil, end_time: nil, limit: nil, offset: nil, &block
)
  params = {}
  params[:start_time] = start_time.to_i unless start_time.nil?
  params[:end_time] = end_time.to_i unless end_time.nil?
  params[:limit] = limit.to_i unless limit.nil?
  params[:offset] = offset.to_i unless offset.nil?
  resp = get(@auth, Blocks.url, params, &block)
  finish(resp, @raw_resp) { |r| Blocks.create_blocks(r) }
end