class MailchimpMarketing::ReportsApi

Attributes

api_client[RW]

Public Class Methods

new(api_client) click to toggle source
# File lib/MailchimpMarketing/api/reports_api.rb, line 19
def initialize(api_client)
  @api_client = api_client
end

Public Instance Methods

get_all_campaign_reports(opts = {}) click to toggle source

List campaign reports

# File lib/MailchimpMarketing/api/reports_api.rb, line 24
def get_all_campaign_reports(opts = {})
  fail ArgumentError, 'invalid value for "opts[:"count"]", must be smaller than or equal to 1000.' if !opts[:'count'].nil? && opts[:'count'] > 1000
  fail ArgumentError, 'invalid value for "type", must be one of regular, plaintext, absplit, rss, variate' if opts[:'type'] && !['regular', 'plaintext', 'absplit', 'rss', 'variate'].include?(opts[:'type'])

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
  query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
  query_params[:'type'] = opts[:'type'] if !opts[:'type'].nil?
  query_params[:'before_send_time'] = opts[:'before_send_time'] if !opts[:'before_send_time'].nil?
  query_params[:'since_send_time'] = opts[:'since_send_time'] if !opts[:'since_send_time'].nil?
  post_body = nil

  local_var_path = '/reports'
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_campaign_abuse_report(campaign_id, report_id, opts = {}) click to toggle source

Get abuse report

# File lib/MailchimpMarketing/api/reports_api.rb, line 78
def get_campaign_abuse_report(campaign_id, report_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, "Missing required param: 'report_id'" if report_id.nil?

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/abuse-reports/{report_id}'.sub('{' + 'campaign_id' + '}', campaign_id.to_s).sub('{' + 'report_id' + '}', report_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_campaign_abuse_reports(campaign_id, opts = {}) click to toggle source

List abuse reports

# File lib/MailchimpMarketing/api/reports_api.rb, line 62
def get_campaign_abuse_reports(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/abuse-reports'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_campaign_advice(campaign_id, opts = {}) click to toggle source

List campaign feedback

# File lib/MailchimpMarketing/api/reports_api.rb, line 95
def get_campaign_advice(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/advice'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_campaign_click_details(campaign_id, opts = {}) click to toggle source

List campaign details

# File lib/MailchimpMarketing/api/reports_api.rb, line 111
def get_campaign_click_details(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, 'invalid value for "opts[:"count"]", must be smaller than or equal to 1000.' if !opts[:'count'].nil? && opts[:'count'] > 1000

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
  query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/click-details'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_campaign_open_details(campaign_id, opts = {}) click to toggle source

List campaign open details

# File lib/MailchimpMarketing/api/reports_api.rb, line 295
def get_campaign_open_details(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, 'invalid value for "opts[:"count"]", must be smaller than or equal to 1000.' if !opts[:'count'].nil? && opts[:'count'] > 1000

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
  query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
  query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/open-details'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_campaign_recipient(campaign_id, subscriber_hash, opts = {}) click to toggle source

Get campaign recipient info

# File lib/MailchimpMarketing/api/reports_api.rb, line 351
def get_campaign_recipient(campaign_id, subscriber_hash, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, "Missing required param: 'subscriber_hash'" if subscriber_hash.nil?

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/sent-to/{subscriber_hash}'.sub('{' + 'campaign_id' + '}', campaign_id.to_s).sub('{' + 'subscriber_hash' + '}', subscriber_hash.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_campaign_recipients(campaign_id, opts = {}) click to toggle source

List campaign recipients

# File lib/MailchimpMarketing/api/reports_api.rb, line 332
def get_campaign_recipients(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, 'invalid value for "opts[:"count"]", must be smaller than or equal to 1000.' if !opts[:'count'].nil? && opts[:'count'] > 1000

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
  query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/sent-to'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_campaign_report(campaign_id, opts = {}) click to toggle source

Get campaign report

# File lib/MailchimpMarketing/api/reports_api.rb, line 46
def get_campaign_report(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_domain_performance_for_campaign(campaign_id, opts = {}) click to toggle source

List domain performance stats

# File lib/MailchimpMarketing/api/reports_api.rb, line 185
def get_domain_performance_for_campaign(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/domain-performance'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_ecommerce_product_activity_for_campaign(campaign_id, opts = {}) click to toggle source

List campaign product activity

# File lib/MailchimpMarketing/api/reports_api.rb, line 201
def get_ecommerce_product_activity_for_campaign(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, 'invalid value for "opts[:"count"]", must be smaller than or equal to 1000.' if !opts[:'count'].nil? && opts[:'count'] > 1000
  fail ArgumentError, 'invalid value for "sort_field", must be one of title, total_revenue, total_purchased' if opts[:'sort_field'] && !['title', 'total_revenue', 'total_purchased'].include?(opts[:'sort_field'])

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
  query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
  query_params[:'sort_field'] = opts[:'sort_field'] if !opts[:'sort_field'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/ecommerce-product-activity'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_eepurl_activity_for_campaign(campaign_id, opts = {}) click to toggle source

List EepURL activity

# File lib/MailchimpMarketing/api/reports_api.rb, line 222
def get_eepurl_activity_for_campaign(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/eepurl'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_email_activity_for_campaign(campaign_id, opts = {}) click to toggle source

List email activity

# File lib/MailchimpMarketing/api/reports_api.rb, line 238
def get_email_activity_for_campaign(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, 'invalid value for "opts[:"count"]", must be smaller than or equal to 1000.' if !opts[:'count'].nil? && opts[:'count'] > 1000

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
  query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
  query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/email-activity'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_email_activity_for_subscriber(campaign_id, subscriber_hash, opts = {}) click to toggle source

Get subscriber email activity

# File lib/MailchimpMarketing/api/reports_api.rb, line 258
def get_email_activity_for_subscriber(campaign_id, subscriber_hash, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, "Missing required param: 'subscriber_hash'" if subscriber_hash.nil?

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/email-activity/{subscriber_hash}'.sub('{' + 'campaign_id' + '}', campaign_id.to_s).sub('{' + 'subscriber_hash' + '}', subscriber_hash.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_locations_for_campaign(campaign_id, opts = {}) click to toggle source

List top open activities

# File lib/MailchimpMarketing/api/reports_api.rb, line 276
def get_locations_for_campaign(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, 'invalid value for "opts[:"count"]", must be smaller than or equal to 1000.' if !opts[:'count'].nil? && opts[:'count'] > 1000

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
  query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/locations'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_sub_reports_for_campaign(campaign_id, opts = {}) click to toggle source

List child campaign reports

# File lib/MailchimpMarketing/api/reports_api.rb, line 368
def get_sub_reports_for_campaign(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/sub-reports'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_subscriber_info(campaign_id, link_id, subscriber_hash, opts = {}) click to toggle source

Get clicked link subscriber

# File lib/MailchimpMarketing/api/reports_api.rb, line 167
def get_subscriber_info(campaign_id, link_id, subscriber_hash, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, "Missing required param: 'link_id'" if link_id.nil?
  fail ArgumentError, "Missing required param: 'subscriber_hash'" if subscriber_hash.nil?

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/click-details/{link_id}/members/{subscriber_hash}'.sub('{' + 'campaign_id' + '}', campaign_id.to_s).sub('{' + 'link_id' + '}', link_id.to_s).sub('{' + 'subscriber_hash' + '}', subscriber_hash.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_subscriber_info_for_opened_campaign(campaign_id, subscriber_hash, opts = {}) click to toggle source

Get opened campaign subscriber

# File lib/MailchimpMarketing/api/reports_api.rb, line 315
def get_subscriber_info_for_opened_campaign(campaign_id, subscriber_hash, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, "Missing required param: 'subscriber_hash'" if subscriber_hash.nil?

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/open-details/{subscriber_hash}'.sub('{' + 'campaign_id' + '}', campaign_id.to_s).sub('{' + 'subscriber_hash' + '}', subscriber_hash.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_subscribers_info(campaign_id, link_id, opts = {}) click to toggle source

List clicked link subscribers

# File lib/MailchimpMarketing/api/reports_api.rb, line 147
def get_subscribers_info(campaign_id, link_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, "Missing required param: 'link_id'" if link_id.nil?
  fail ArgumentError, 'invalid value for "opts[:"count"]", must be smaller than or equal to 1000.' if !opts[:'count'].nil? && opts[:'count'] > 1000

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
  query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/click-details/{link_id}/members'.sub('{' + 'campaign_id' + '}', campaign_id.to_s).sub('{' + 'link_id' + '}', link_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_unsubscribed_list_for_campaign(campaign_id, opts = {}) click to toggle source

List unsubscribed members

# File lib/MailchimpMarketing/api/reports_api.rb, line 384
def get_unsubscribed_list_for_campaign(campaign_id, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, 'invalid value for "opts[:"count"]", must be smaller than or equal to 1000.' if !opts[:'count'].nil? && opts[:'count'] > 1000

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
  query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/unsubscribed'.sub('{' + 'campaign_id' + '}', campaign_id.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end
get_unsubscribed_list_member(campaign_id, subscriber_hash, opts = {}) click to toggle source

Get unsubscribed member

# File lib/MailchimpMarketing/api/reports_api.rb, line 403
def get_unsubscribed_list_member(campaign_id, subscriber_hash, opts = {})
  fail ArgumentError, "Missing required param: 'campaign_id'" if campaign_id.nil?
  fail ArgumentError, "Missing required param: 'subscriber_hash'" if subscriber_hash.nil?

  query_params = {}
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :csv) if !opts[:'fields'].nil?
  query_params[:'exclude_fields'] = @api_client.build_collection_param(opts[:'exclude_fields'], :csv) if !opts[:'exclude_fields'].nil?
  post_body = nil

  local_var_path = '/reports/{campaign_id}/unsubscribed/{subscriber_hash}'.sub('{' + 'campaign_id' + '}', campaign_id.to_s).sub('{' + 'subscriber_hash' + '}', subscriber_hash.to_s)
  data = @api_client.call_api(:GET, local_var_path,
    :query_params => query_params,
    :body => post_body)
  return data
end