Skip to content

Ruby gem for accessing the Campaign Monitor API with support for new API keys, hex IDs, and custom subscriber fields.

License

Notifications You must be signed in to change notification settings

patientslikeme/campaign_monitor

 
 

Repository files navigation

campaign_monitor

This RubyGem provides access to the Campaign Monitor API (www.campaignmonitor.com/api).

Campaign Monitor recently made some changes to their API.

This fork makes the following changes:

  • host changed from app.campaignmonitor.com to api.createsend.com

  • ID values are no longer sent #to_i because they are hex strings

  • added support for subscribers with custom fields using SOAP API

  • refactored gemspec to build on github

  • misc. cleanup and refactoring

Pre-requisites

An account with Campaign Monitor and the API Key. Accounts are free and can be created at www.campaignmonitor.com.

Resources

Install

sudo gem install patientslikeme-campaign_monitor -s http://gems.github.com

Add the following to the Rails::Initializer block in config/environment.rb (optionally specify a :version):

config.gem 'patientslikeme-campaign_monitor', :lib => 'campaign_monitor', :source => 'http://gems.github.com'

Git Repository

github.com/patientslikeme/campaign_monitor

Usage

cm = CampaignMonitor.new # assumes you've set CAMPAIGN_MONITOR_API_KEY in your project

for client in cm.clients
  for list in client.lists
    client.name # => returns the name

    # modify a subscriber list
    list.add_subscriber(email, name, custom_fields_hash)
    list.remove_subscriber(email)
    list.add_and_resubscribe(email, name, custom_fields_hash)

    # get subscriber list details
    subscribers = list.active_subscribers(since_time)
    unsubscribed = list.unsubscribed(since_time)
    bounced = list.bounced(since_time)
  end

  for campaign in client.campaigns

  end
end

About

Ruby gem for accessing the Campaign Monitor API with support for new API keys, hex IDs, and custom subscriber fields.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 100.0%