Sha256: 161e962e664761a48d36ad54243305d3fec3a1b57d67cefab06cf3c424848481

Contents?: true

Size: 1.31 KB

Versions: 2

Compression:

Stored size: 1.31 KB

Contents

module MailerLite
  module Clients
    # MailerLite Groups
    module Groups
      # Get list of groups
      #
      # @see https://developers.mailerlite.com/docs/groups
      #
      # @return [Array] Response from API.
      def groups
        connection.get('groups')
      end

      def group(id)
        result = connection.get("groups/#{id}")
        result.is_a?(Array) ? result[0] : result
      end

      def create_group(name)
        connection.post('groups', name: name)
      end

      def update_group(id, options = {})
        connection.put("groups/#{id}", options)
      end

      def delete_group(id)
        connection.delete("groups/#{id}")
      end

      def group_subscribers(group_id, options = {})
        connection.get("groups/#{group_id}/subscribers", options)
      end

      def create_group_subscriber(group_id, options = {})
        connection.post("groups/#{group_id}/subscribers", options)
      end

      def import_group_subscribers(group_id, subscribers, options = {})
        options[:subscribers] = subscribers
        connection.post("groups/#{group_id}/subscribers/import", options)
      end

      def delete_group_subscriber(group_id, subscriber_id_or_email)
        connection.delete(
          "groups/#{group_id}/subscribers/#{subscriber_id_or_email}"
        )
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
mailerlite-1.0.2 lib/mailerlite/clients/groups.rb
mailerlite-1.0.1 lib/mailerlite/clients/groups.rb