Method: WordstreamClient::KeywordTool#get_suggestions

Defined in:
lib/wordstream_client/keyword_tool.rb

#get_suggestions(max = 100000, block_adult = 'false') ⇒ Object



100
101
102
103
104
105
106
107
108
109
110
111
112
113
# File 'lib/wordstream_client/keyword_tool.rb', line 100

def get_suggestions(max = 100000, block_adult = 'false')
  max          = max.abs > 100000 ? 100000 : max.abs
  path         = '/keywordtool/get_keywords'
  url_keywords = URI.encode( @keywords[0..19], Regexp.new("[^#{URI::PATTERN::UNRESERVED}]") )
  query        = "?session_id=#{@config.session_id}&seeds=#{url_keywords}&block_adult=#{block_adult}&max_niches=#{max}"
  resp         = RestClient.get( @config.default_host + path + query )
  data         = JSON.parse resp.body

  raise KeywordToolError.new('get_suggestions', data['detail']) if data['code'].match(/error/i)

  return data['data']
rescue JSON::ParserError => e
  raise KeywordToolError.new('get_suggestions', 'Bad response from Wordstream when trying to get keyword suggestions.')
end