Module: RelinkApi::Jobs

Defined in:
lib/relink_api/jobs.rb

Constant Summary collapse

CREATE_REQUIRED_PARAMS =
%w(accountId companyName companyUrl
title description location)
CREATE_LOCATION_PARAMS =
%w(name cc coords)
CREATE_COORDS_PARAMS =
%w(lat lon)
CREATE_URL =
"/jobs"
INDEX_URL =
"/jobs"
SHOW_URL =
"/jobs/"
DELETE_URL =
"/jobs/"

Class Method Summary collapse

Class Method Details

.create(params = {}) ⇒ Object



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/relink_api/jobs.rb', line 18

def self.create(params = {})
  params = RelinkApi.transform_params(params)

  RelinkApi.check_params_presence(present:  params,
                                  required: CREATE_REQUIRED_PARAMS)
  RelinkApi.check_params_presence(present:  params["location"],
                                  required: CREATE_LOCATION_PARAMS)
  RelinkApi.check_params_presence(present:  params["location"]["coords"],
                                  required: CREATE_COORDS_PARAMS)


  HTTParty.post(RelinkApi.config.api_base_url + CREATE_URL,
                body:    params.to_json,
                headers: RelinkApi.authentication_header)
end

.delete(id) ⇒ Object



47
48
49
50
# File 'lib/relink_api/jobs.rb', line 47

def self.delete(id)
  HTTParty.get(RelinkApi.config.api_base_url + DELETE_URL + id,
               headers: RelinkApi.authentication_header)
end

.index(params = {}) ⇒ Object



34
35
36
37
38
39
40
# File 'lib/relink_api/jobs.rb', line 34

def self.index(params = {})
 params = RelinkApi.transform_params(params)

 HTTParty.get(RelinkApi.config.api_base_url + INDEX_URL,
              query: params,
              headers: RelinkApi.authentication_header)
end

.show(id) ⇒ Object



42
43
44
45
# File 'lib/relink_api/jobs.rb', line 42

def self.show(id)
  HTTParty.get(RelinkApi.config.api_base_url + SHOW_URL + id,
               headers: RelinkApi.authentication_header)
end