class Sendgrid::API::Newsletter::Schedule::Services
Public Instance Methods
Schedule
a delivery time for an existing Marketing Email.
@see sendgrid.com/docs/API_Reference/Marketing_Emails_API/schedule.html#-add @param marketing_email [String, Entities::MarketingEmail] A marketing email name or Entities::MarketingEmail
object. @param options [Hash] A customizable set of options. @option options [String] :at Date/Time to schedule marketing email Delivery. Date/Time must be provided in ISO 8601 format (YYYY-MM-DD HH:MM:SS+-HH:MM) @option options [Fixnum] :after Number of minutes until delivery should occur. Must be a positive integer. @return [Entities::Response] An Entities::Response
object.
# File lib/sendgrid/api/newsletter/schedule.rb, line 26 def add(marketing_email, options = {}) options.keep_if {|key, value| [:at, :after].include?(key) } options[:at] = format_time(options[:at]) if options.member?(:at) params = { :name => extract_marketing_email(marketing_email) } params.merge!(options) if options.any? perform_request(Entities::Response, 'newsletter/schedule/add.json', params) end
Cancel a scheduled send for a Marketing Email.
@see sendgrid.com/docs/API_Reference/Marketing_Emails_API/schedule.html#-delete @param marketing_email [String, Entities::MarketingEmail] A marketing email name or Entities::MarketingEmail
object. @return [Entities::Response] An Entities::Response
object.
# File lib/sendgrid/api/newsletter/schedule.rb, line 49 def delete(marketing_email) params = { :name => extract_marketing_email(marketing_email) } perform_request(Entities::Response, 'newsletter/schedule/delete.json', params) end
Retrieve the scheduled delivery time for an existing Marketing Email.
@see sendgrid.com/docs/API_Reference/Marketing_Emails_API/schedule.html#-get @param marketing_email [String, Entities::MarketingEmail] A marketing email name or Entities::MarketingEmail
object. @return [Entities::Schedule] An Entities::Schedule
objects.
# File lib/sendgrid/api/newsletter/schedule.rb, line 39 def get(marketing_email) params = { :name => extract_marketing_email(marketing_email) } perform_request(Entities::Schedule, 'newsletter/schedule/get.json', params) end
Private Instance Methods
# File lib/sendgrid/api/newsletter/schedule.rb, line 56 def format_time(at) case at when ::String at when ::Time at.strftime('%Y-%m-%d %H:%M:%S%:z') end end