class SpacyCloud::Client

Client requests the API.

Public Class Methods

new(model, token) click to toggle source
# File lib/spacycloud.rb, line 12
def initialize(model, token)
  @headers = {
    'Authorization' => "Token #{token}"
  }
  @root_url = "#{BASE_URL}/#{API_VERSION}/#{model}"
end

Public Instance Methods

dependencies(user_input) click to toggle source
# File lib/spacycloud.rb, line 23
def dependencies(user_input)
  api_post('dependencies', user_input)
end
entities(user_input) click to toggle source
# File lib/spacycloud.rb, line 19
def entities(user_input)
  api_post('entities', user_input)
end
lib_versions() click to toggle source
# File lib/spacycloud.rb, line 31
def lib_versions
  api_get('version')
end
sentence_dependencies(user_input) click to toggle source
# File lib/spacycloud.rb, line 27
def sentence_dependencies(user_input)
  api_post('sentence-dependencies', user_input)
end

Private Instance Methods

api_get(endpoint) click to toggle source
# File lib/spacycloud.rb, line 45
def api_get(endpoint)
  response = RestClient.get("#{@root_url}/#{endpoint}", @headers)
  JSON.parse(response.body)
end
api_post(endpoint, user_input) click to toggle source
# File lib/spacycloud.rb, line 37
def api_post(endpoint, user_input)
  payload = {
    'text' => user_input
  }
  response = RestClient.post("#{@root_url}/#{endpoint}", payload.to_json, @headers)
  JSON.parse(response.body)
end