Class: BlizzardApi::Hearthstone::Card

Inherits:
GenericDataEndpoint show all
Defined in:
lib/blizzard_api/hearthstone/game_data/card.rb

Overview

This class allows access to Hearthstone card data

You can get an instance of this class using the default region as follows:

api_instance = BlizzardApi::Hearthstone.card

Constant Summary collapse

VALID_SEARCH_OPTIONS =

Valid options for card search

%i[
  set
  class
  manaCost
  attack
  health
  collectible
  rarity
  type
  minionType
  keyword
  textFilter
  gameMode
  page
  pageSize
  sort
  order
].freeze

Constants inherited from Request

Request::CACHE_DAY, Request::CACHE_HOUR, Request::CACHE_TRIMESTER

Constants included from ApiStandards

ApiStandards::BASE_URLS

Instance Attribute Summary

Attributes inherited from Request

#mode, #region

Instance Method Summary collapse

Methods inherited from GenericDataEndpoint

#initialize

Methods inherited from Request

#initialize

Methods inherited from Request

#initialize

Constructor Details

This class inherits a constructor from BlizzardApi::Hearthstone::GenericDataEndpoint

Instance Method Details

#get(id_or_slug, game_mode = 'constructed', **options) ⇒ Hash

Returns the card with an ID or slug that matches the one you specify. For more information, see the Card Search Guide.

in the configuration module

Options Hash (**options):

  • :locale (String)

    Overrides the default locale for a single call

  • :namespace (String)

    Overrides the default namespace for a single call

  • :access_token (String)

    Overrides the access_token for a single call

  • :ignore_cache (Boolean)

    If set to true the request will not use the cache

  • :ttl (Integer)

    Override the default time (in seconds) a request should be cached

  • :since (DateTime)

    Adds the If-modified-since headers. Will always ignore cache when set.

See Also:



93
94
95
# File 'lib/blizzard_api/hearthstone/game_data/card.rb', line 93

def get(id_or_slug, game_mode = 'constructed', **options)
  super id_or_slug, **{ gameMode: game_mode }.merge(options)
end

#search(search_options = {}, **options) ⇒ Hash

Fetch all possible data for one of the items listed by the #index using its id

in the configuration module

Options Hash (**options):

  • :locale (String)

    Overrides the default locale for a single call

  • :namespace (String)

    Overrides the default namespace for a single call

  • :access_token (String)

    Overrides the access_token for a single call

  • :ignore_cache (Boolean)

    If set to true the request will not use the cache

  • :ttl (Integer)

    Override the default time (in seconds) a request should be cached

  • :since (DateTime)

    Adds the If-modified-since headers. Will always ignore cache when set.

  • :validate_fields (Boolean)

    If set to true, this method will throw an exception if nay search option is invalid



75
76
77
78
79
# File 'lib/blizzard_api/hearthstone/game_data/card.rb', line 75

def search(search_options = {}, **options)
  validate_search_options search_options if options.include? :validate_fields

  api_request "#{base_url(:community)}/cards", **default_options.merge(options).merge(search_options)
end