class Grammarbot::Client
Public Class Methods
new(api_key: nil, language: 'en-US', base_uri: 'http://api.grammarbot.io')
click to toggle source
Initializes API client @param api_key [String] GrammarBot API key, optional @param language [String] language in which to check, optional @param base_uri [String] GrammarBot API server url, optional
# File lib/grammarbot/client.rb, line 11 def initialize(api_key: nil, language: 'en-US', base_uri: 'http://api.grammarbot.io') api_key ||= ENV['GRAMMARBOT_API_KEY'] || 'ruby-default' self.class.base_uri base_uri self.class.default_params api_key: api_key, language: language end
Public Instance Methods
api_key=(new_api_key)
click to toggle source
Change client api_key @param new_api_key [String] API key
# File lib/grammarbot/client.rb, line 26 def api_key=(new_api_key) self.class.default_params[:api_key] = new_api_key end
base_uri=(uri)
click to toggle source
Change client base_uri @param uri [String] API endpoint base uri
# File lib/grammarbot/client.rb, line 38 def base_uri=(uri) self.class.base_uri(uri) end
check(text)
click to toggle source
Submits text for grammar and spelling errors to GrammarBot @param text [String] text to submit @return [Object] GrammarBot response
# File lib/grammarbot/client.rb, line 20 def check(text) request(:get, '/v2/check', query: { text: text }) end
language=(lang)
click to toggle source
Change language for text check @param lang [String] language code
# File lib/grammarbot/client.rb, line 32 def language=(lang) self.class.default_params[:language] = lang end
Private Instance Methods
request(http_method, path, query: {})
click to toggle source
# File lib/grammarbot/client.rb, line 44 def request(http_method, path, query: {}) response = self.class.send(http_method, path, query: query) JSON.parse response.body, object_class: OpenStruct end