Module: Pokemon::RestClient

Included in:
QueryBuilder, Rarity, Subtype, Supertype, Type
Defined in:
lib/pokemon_tcg_sdk/rest_client.rb

Class Method Summary collapse

Class Method Details

.get(endpoint, params = nil) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/pokemon_tcg_sdk/rest_client.rb', line 8

def self.get(endpoint, params=nil)
  if params.nil?
    query = endpoint
  else
    query = "#{endpoint}?#{params_to_query(params)}"
  end

  response = client.get(query)

  case response.status
  when 200
    JSON.parse(response.body)
  when 429
    raise 'You have hit your rate limit.'
  when 404
    raise ArgumentError, 'Resource not found'
  when 403
    raise 'You are not authorized to access this endpoint. Please make sure you have a valid API Key. Go to https://dev.pokemontcg.io for more info.'
  else
    raise 'Something went wrong...please try again later.'
  end
end