Sha256: 325723e894062807f99be8ad4fd9eb960423f3a15875453a9d188e6a315ca51f

Contents?: true

Size: 1.14 KB

Versions: 14

Compression:

Stored size: 1.14 KB

Contents

module Hubspot
  class Subscription
    SUBSCRIPTIONS_PATH = '/email/public/v1/subscriptions'
    TIMELINE_PATH      = '/email/public/v1/subscriptions/timeline'
    SUBSCRIPTION_PATH  = '/email/public/v1/subscriptions/:email_address'

    attr_reader :subscribed
    attr_reader :marked_as_spam
    attr_reader :bounced
    attr_reader :status
    attr_reader :subscription_statuses

    def initialize(response_hash)
      @subscribed     = response_hash['subscribed']
      @marked_as_spam = response_hash['markedAsSpam']
      @bounced        = response_hash['bounced']
      @status         = response_hash['status']
      @subscription_statuses  = response_hash['SubscriptionStatuses']
    end

    class << self
      def status(email)
        response = Hubspot::Connection.get_json(SUBSCRIPTION_PATH, {email_address: email})
        new(response)
      end

      def unsubscribe_from_all_emails(email)
        response =
          Hubspot::Connection.put_json(
            SUBSCRIPTION_PATH, params: { email_address: email },
                               body: { "unsubscribeFromAll": true }
          )
        new(response)
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
hubspot-api-ruby-0.19.0 lib/hubspot/subscription.rb
hubspot-api-ruby-0.18.0 lib/hubspot/subscription.rb
hubspot-api-ruby-0.17.1 lib/hubspot/subscription.rb
hubspot-api-ruby-0.17.0 lib/hubspot/subscription.rb
hubspot-api-ruby-0.16.0 lib/hubspot/subscription.rb
hubspot-api-ruby-0.15.0 lib/hubspot/subscription.rb
hubspot-api-ruby-0.14.0 lib/hubspot/subscription.rb
hubspot-api-ruby-0.13.0 lib/hubspot/subscription.rb
hubspot-api-ruby-0.12.0 lib/hubspot/subscription.rb
hubspot-api-ruby-0.11.0 lib/hubspot/subscription.rb
hubspot-api-ruby-0.10.0 lib/hubspot/subscription.rb
hubspot-api-ruby-0.9.0 lib/hubspot/subscription.rb
hubspot-api-ruby-0.8.1 lib/hubspot/subscription.rb
hubspot-api-ruby-0.8.0 lib/hubspot/subscription.rb