class Mailflow::Tag

Attributes

name[RW]

Public Class Methods

create(tags, params = {}, trigger = false) click to toggle source
# File lib/mailflow-ruby/tag.rb, line 19
def create(tags, params = {}, trigger = false)
  tags = tags.map { |tag| {name: tag}}
  body = {tags: tags}
  body.merge!(params)
  body.merge!({trigger: trigger}) if trigger
  
  response = post_request('tags', body)
  raise UnprocessableError if (response.code == 422 || response.code == 404)
  response.parsed_response.map do |attributes|
    Tag.new(attributes)
  end
end
list(options = {}) click to toggle source
# File lib/mailflow-ruby/tag.rb, line 12
def list(options = {})
  response = get_request('tags', options)
  response.parsed_response.map do |attributes|
    Tag.new(attributes)
  end
end
new(attributes) click to toggle source
# File lib/mailflow-ruby/tag.rb, line 39
def initialize(attributes)
  @name = attributes["name"]
end
untag(tags, params = {}) click to toggle source
# File lib/mailflow-ruby/tag.rb, line 32
def untag(tags, params = {})
  tags = tags.map { |tag| {name: tag}}
  delete_request('tags', {tags: tags}.merge(params))
end

Public Instance Methods

==(other) click to toggle source
# File lib/mailflow-ruby/tag.rb, line 43
def ==(other)
  self.name == other.name
end
delete() click to toggle source
# File lib/mailflow-ruby/tag.rb, line 47
def delete
  Mailflow::Tag.delete_request('tags', {tags: [{name: name}]})
  return true
end