greenhouse_io-gitlab 2.5.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +19 -0
- data/.travis.yml +11 -0
- data/CHANGES.md +41 -0
- data/Gemfile +11 -0
- data/LICENSE.txt +22 -0
- data/README.md +200 -0
- data/Rakefile +8 -0
- data/greenhouse_io.gemspec +29 -0
- data/lib/greenhouse_io.rb +9 -0
- data/lib/greenhouse_io/api.rb +19 -0
- data/lib/greenhouse_io/api/client.rb +145 -0
- data/lib/greenhouse_io/api/job_board.rb +66 -0
- data/lib/greenhouse_io/configuration.rb +21 -0
- data/lib/greenhouse_io/error.rb +10 -0
- data/lib/greenhouse_io/version.rb +3 -0
- data/spec/fixtures/cassettes/apply_to_job.yml +44 -0
- data/spec/fixtures/cassettes/client/activity_feed.yml +36 -0
- data/spec/fixtures/cassettes/client/all_scorecards.yml +38 -0
- data/spec/fixtures/cassettes/client/application.yml +36 -0
- data/spec/fixtures/cassettes/client/application_by_job_id.yml +139 -0
- data/spec/fixtures/cassettes/client/applications.yml +43 -0
- data/spec/fixtures/cassettes/client/candidate.yml +36 -0
- data/spec/fixtures/cassettes/client/candidates.yml +38 -0
- data/spec/fixtures/cassettes/client/create_candidate_note.yml +42 -0
- data/spec/fixtures/cassettes/client/create_candidate_note_invalid_candidate_id.yml +42 -0
- data/spec/fixtures/cassettes/client/create_candidate_note_invalid_missing_field.yml +42 -0
- data/spec/fixtures/cassettes/client/create_candidate_note_invalid_on_behalf_of.yml +42 -0
- data/spec/fixtures/cassettes/client/create_candidate_note_invalid_user_id.yml +42 -0
- data/spec/fixtures/cassettes/client/current_offer_for_application.yml +40 -0
- data/spec/fixtures/cassettes/client/department.yml +36 -0
- data/spec/fixtures/cassettes/client/departments.yml +38 -0
- data/spec/fixtures/cassettes/client/headers.yml +38 -0
- data/spec/fixtures/cassettes/client/job.yml +37 -0
- data/spec/fixtures/cassettes/client/job_post.yml +49 -0
- data/spec/fixtures/cassettes/client/jobs.yml +39 -0
- data/spec/fixtures/cassettes/client/offer.yml +48 -0
- data/spec/fixtures/cassettes/client/offers.yml +51 -0
- data/spec/fixtures/cassettes/client/offers_for_application.yml +40 -0
- data/spec/fixtures/cassettes/client/office.yml +36 -0
- data/spec/fixtures/cassettes/client/offices.yml +46 -0
- data/spec/fixtures/cassettes/client/scheduled_interviews.yml +38 -0
- data/spec/fixtures/cassettes/client/scorecards.yml +37 -0
- data/spec/fixtures/cassettes/client/source.yml +39 -0
- data/spec/fixtures/cassettes/client/sources.yml +37 -0
- data/spec/fixtures/cassettes/client/stages.yml +36 -0
- data/spec/fixtures/cassettes/client/user.yml +36 -0
- data/spec/fixtures/cassettes/client/users.yml +38 -0
- data/spec/fixtures/cassettes/department.yml +45 -0
- data/spec/fixtures/cassettes/departments.yml +45 -0
- data/spec/fixtures/cassettes/invalid_application.yml +43 -0
- data/spec/fixtures/cassettes/invalid_application_id.yml +44 -0
- data/spec/fixtures/cassettes/invalid_id.yml +40 -0
- data/spec/fixtures/cassettes/invalid_organization.yml +40 -0
- data/spec/fixtures/cassettes/job.yml +80 -0
- data/spec/fixtures/cassettes/job_with_questions.yml +85 -0
- data/spec/fixtures/cassettes/jobs.yml +44 -0
- data/spec/fixtures/cassettes/jobs_with_content.yml +118 -0
- data/spec/fixtures/cassettes/office.yml +45 -0
- data/spec/fixtures/cassettes/offices.yml +45 -0
- data/spec/greenhouse_io/api/client_spec.rb +679 -0
- data/spec/greenhouse_io/api/job_board_spec.rb +187 -0
- data/spec/greenhouse_io/configuration_spec.rb +71 -0
- data/spec/greenhouse_io/error_spec.rb +23 -0
- data/spec/spec_helper.rb +22 -0
- metadata +242 -0
@@ -0,0 +1,66 @@
|
|
1
|
+
module GreenhouseIo
|
2
|
+
class JobBoard
|
3
|
+
include HTTMultiParty
|
4
|
+
include GreenhouseIo::API
|
5
|
+
attr_accessor :api_token, :organization
|
6
|
+
base_uri 'https://api.greenhouse.io/v1'
|
7
|
+
|
8
|
+
def initialize(api_token = nil, default_options = {})
|
9
|
+
@api_token = api_token || GreenhouseIo.configuration.api_token
|
10
|
+
@organization = default_options.delete(:organization) || GreenhouseIo.configuration.organization
|
11
|
+
end
|
12
|
+
|
13
|
+
def offices(options = {})
|
14
|
+
get_from_job_board_api("/boards/#{ query_organization(options) }/embed/offices")
|
15
|
+
end
|
16
|
+
|
17
|
+
def office(id, options = {})
|
18
|
+
get_from_job_board_api("/boards/#{ query_organization(options) }/embed/office", query: { id: id })
|
19
|
+
end
|
20
|
+
|
21
|
+
def departments(options = {})
|
22
|
+
get_from_job_board_api("/boards/#{ query_organization(options) }/embed/departments")
|
23
|
+
end
|
24
|
+
|
25
|
+
def department(id, options = {})
|
26
|
+
get_from_job_board_api("/boards/#{ query_organization(options) }/embed/department", query: { id: id })
|
27
|
+
end
|
28
|
+
|
29
|
+
def jobs(options = {})
|
30
|
+
get_from_job_board_api("/boards/#{ query_organization(options) }/embed/jobs", query: { content: options[:content] })
|
31
|
+
end
|
32
|
+
|
33
|
+
def job(id, options = {})
|
34
|
+
get_from_job_board_api("/boards/#{ query_organization(options) }/embed/job", query: { id: id, questions: options[:questions] })
|
35
|
+
end
|
36
|
+
|
37
|
+
def apply_to_job(job_form_hash)
|
38
|
+
post_to_job_board_api('/applications', { :body => job_form_hash, :basic_auth => basic_auth })
|
39
|
+
end
|
40
|
+
|
41
|
+
private
|
42
|
+
|
43
|
+
def query_organization(options_hash)
|
44
|
+
org = options_hash[:organization] || @organization
|
45
|
+
org.nil? ? (raise GreenhouseIo::Error.new("organization can't be blank")) : org
|
46
|
+
end
|
47
|
+
|
48
|
+
def get_from_job_board_api(url, options = {})
|
49
|
+
response = get_response(url, options)
|
50
|
+
if response.code == 200
|
51
|
+
parse_json(response)
|
52
|
+
else
|
53
|
+
raise GreenhouseIo::Error.new(response.code)
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
def post_to_job_board_api(url, options)
|
58
|
+
response = post_response(url, options)
|
59
|
+
if response.code == 200
|
60
|
+
response.include?("success") ? parse_json(response) : raise(GreenhouseIo::Error.new(response["reason"]))
|
61
|
+
else
|
62
|
+
raise GreenhouseIo::Error.new(response.code)
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module GreenhouseIo
|
2
|
+
class Configuration
|
3
|
+
attr_accessor :symbolize_keys, :organization, :api_token
|
4
|
+
|
5
|
+
def initialize
|
6
|
+
@symbolize_keys = false
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.configuration
|
11
|
+
@configuration ||= Configuration.new
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.configuration=(config)
|
15
|
+
@configuration = config
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.configure
|
19
|
+
yield configuration
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://123FakeToken:@api.greenhouse.io/v1/applications
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: id=721&first_name=Richard&last_name=Feynman&email=richard123%40test.ga.co
|
9
|
+
headers: {}
|
10
|
+
response:
|
11
|
+
status:
|
12
|
+
code: 200
|
13
|
+
message: OK
|
14
|
+
headers:
|
15
|
+
Cache-Control:
|
16
|
+
- max-age=0, private, must-revalidate
|
17
|
+
Content-Type:
|
18
|
+
- text/javascript; charset=utf-8
|
19
|
+
Date:
|
20
|
+
- Mon, 16 Sep 2013 18:25:13 GMT
|
21
|
+
Etag:
|
22
|
+
- ! '"60d45e24e36a2c0bbd1b09470dc4712c"'
|
23
|
+
Set-Cookie:
|
24
|
+
- _session_id=0b94e410bd34c2cefaae8257f0f4a6b4; path=/; HttpOnly
|
25
|
+
Status:
|
26
|
+
- 200 OK
|
27
|
+
Vary:
|
28
|
+
- Accept-Encoding
|
29
|
+
X-Request-Id:
|
30
|
+
- e4ffe754f2c13976f8b77fb36794d7a4
|
31
|
+
X-Runtime:
|
32
|
+
- '0.438182'
|
33
|
+
X-Ua-Compatible:
|
34
|
+
- IE=Edge,chrome=1
|
35
|
+
Transfer-Encoding:
|
36
|
+
- chunked
|
37
|
+
Connection:
|
38
|
+
- keep-alive
|
39
|
+
body:
|
40
|
+
encoding: US-ASCII
|
41
|
+
string: ! '{"success":"Candidate saved successfully"}'
|
42
|
+
http_version:
|
43
|
+
recorded_at: Mon, 16 Sep 2013 18:25:13 GMT
|
44
|
+
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,36 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://123FakeToken:@harvest.greenhouse.io/v1/candidates/1/activity_feed
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers: {}
|
10
|
+
response:
|
11
|
+
status:
|
12
|
+
code: 200
|
13
|
+
message: OK
|
14
|
+
headers:
|
15
|
+
Content-Type:
|
16
|
+
- application/json;charset=utf-8
|
17
|
+
Date:
|
18
|
+
- Wed, 23 Apr 2014 23:42:00 GMT
|
19
|
+
Status:
|
20
|
+
- 200 OK
|
21
|
+
X-Content-Type-Options:
|
22
|
+
- nosniff
|
23
|
+
X-Ratelimit-Limit:
|
24
|
+
- '20'
|
25
|
+
X-Ratelimit-Remaining:
|
26
|
+
- '20'
|
27
|
+
Content-Length:
|
28
|
+
- '310'
|
29
|
+
Connection:
|
30
|
+
- keep-alive
|
31
|
+
body:
|
32
|
+
encoding: UTF-8
|
33
|
+
string: "{\"notes\":[],\"emails\":[],\"activities\":[{\"created_at\":\"2014-04-22T19:29:14Z\",\"subject\":null,\"body\":\"User One was moved into Preliminary Phone Screen for Bermuda Admissions on 04/01/2014\",\"user\":null},{\"created_at\":\"2014-04-18T18:54:14Z\",\"subject\":null,\"body\":\"User One applied online.\",\"user\":null}]}"
|
34
|
+
http_version:
|
35
|
+
recorded_at: Wed, 23 Apr 2014 23:42:01 GMT
|
36
|
+
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,38 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://123FakeToken:@harvest.greenhouse.io/v1/scorecards/
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers: {}
|
10
|
+
response:
|
11
|
+
status:
|
12
|
+
code: 200
|
13
|
+
message: OK
|
14
|
+
headers:
|
15
|
+
Connection:
|
16
|
+
- keep-alive
|
17
|
+
Date:
|
18
|
+
- Wed, 10 Feb 2016 03:17:48 GMT
|
19
|
+
Status:
|
20
|
+
- 200 OK
|
21
|
+
Content-Type:
|
22
|
+
- application/json;charset=utf-8
|
23
|
+
Content-Length:
|
24
|
+
- '370562'
|
25
|
+
X-Ratelimit-Limit:
|
26
|
+
- '50'
|
27
|
+
X-Ratelimit-Remaining:
|
28
|
+
- '49'
|
29
|
+
X-Content-Type-Options:
|
30
|
+
- nosniff
|
31
|
+
Via:
|
32
|
+
- 1.1 vegur
|
33
|
+
body:
|
34
|
+
encoding: UTF-8
|
35
|
+
string: '[{"id":123,"interview":"Preliminary Screening Call","candidate_id":123,"interviewed_at":"2015-10-08T19:00:00.000Z","submitted_by":{"id":123,"name":"Test User"},"submitted_at":"2015-10-08T19:11:09.287Z","overall_recommendation":"yes","ratings":{"definitely_not":[],"no":[],"mixed":[],"yes":[],"strong_yes":[]},"questions":[{"id":null,"question":"Key Take-Aways","answer":""},{"id":null,"question":"Private Notes","answer":""}]},{"id":456,"interview":"Application Review","candidate_id":456,"interviewed_at":"2015-10-08T19:00:00.000Z","submitted_by":{"id":456,"name":"Test User"},"submitted_at":"2015-10-08T19:11:09.287Z","overall_recommendation":"yes","ratings":{"definitely_not":[],"no":[],"mixed":[],"yes":[],"strong_yes":[]},"questions":[{"id":null,"question":"Key Take-Aways","answer":""},{"id":null,"question":"Private Notes","answer":""}]}]'
|
36
|
+
http_version:
|
37
|
+
recorded_at: Wed, 10 Feb 2016 03:17:48 GMT
|
38
|
+
recorded_with: VCR 3.0.1
|
@@ -0,0 +1,36 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://123FakeToken:@harvest.greenhouse.io/v1/applications/1
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers: {}
|
10
|
+
response:
|
11
|
+
status:
|
12
|
+
code: 200
|
13
|
+
message: OK
|
14
|
+
headers:
|
15
|
+
Content-Type:
|
16
|
+
- application/json;charset=utf-8
|
17
|
+
Date:
|
18
|
+
- Wed, 23 Apr 2014 23:45:18 GMT
|
19
|
+
Status:
|
20
|
+
- 200 OK
|
21
|
+
X-Content-Type-Options:
|
22
|
+
- nosniff
|
23
|
+
X-Ratelimit-Limit:
|
24
|
+
- '20'
|
25
|
+
X-Ratelimit-Remaining:
|
26
|
+
- '20'
|
27
|
+
Content-Length:
|
28
|
+
- '29003'
|
29
|
+
Connection:
|
30
|
+
- keep-alive
|
31
|
+
body:
|
32
|
+
encoding: UTF-8
|
33
|
+
string: "{\"id\":1,\"person_id\":1,\"prospect\":false,\"applied_at\":\"2014-01-23T23:14:23Z\",\"last_activity_at\":\"2014-04-23T23:14:22Z\",\"source\":{\"id\":1,\"public_name\":\"Jobs page on your website\"},\"credited_to\":null,\"jobs\":[{\"id\":4595,\"name\":\"Associate Admissions Producer (Bermuda)\"}],\"status\":\"active\",\"current_stage\":{\"id\":1,\"name\":\"Application Review\"}}"
|
34
|
+
http_version:
|
35
|
+
recorded_at: Wed, 23 Apr 2014 23:45:19 GMT
|
36
|
+
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,139 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://123FakeToken:@harvest.greenhouse.io/v1/applications?job_id=144371
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept-Encoding:
|
11
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
12
|
+
Accept:
|
13
|
+
- "*/*"
|
14
|
+
User-Agent:
|
15
|
+
- Ruby
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 200
|
19
|
+
message: OK
|
20
|
+
headers:
|
21
|
+
Server:
|
22
|
+
- Cowboy
|
23
|
+
Connection:
|
24
|
+
- keep-alive
|
25
|
+
Date:
|
26
|
+
- Wed, 27 Jan 2016 18:09:18 GMT
|
27
|
+
Status:
|
28
|
+
- 200 OK
|
29
|
+
Content-Type:
|
30
|
+
- application/json;charset=utf-8
|
31
|
+
Link:
|
32
|
+
- <https://harvest.greenhouse.io/v1/applications?job_id=144371&page=1&per_page=100>;
|
33
|
+
rel="last"
|
34
|
+
Content-Length:
|
35
|
+
- '11280'
|
36
|
+
X-Ratelimit-Limit:
|
37
|
+
- '50'
|
38
|
+
X-Ratelimit-Remaining:
|
39
|
+
- '49'
|
40
|
+
X-Content-Type-Options:
|
41
|
+
- nosniff
|
42
|
+
Via:
|
43
|
+
- 1.1 vegur
|
44
|
+
body:
|
45
|
+
encoding: UTF-8
|
46
|
+
string: '[{"id":21708448,"candidate_id":13381395,"prospect":false,"applied_at":"2015-11-19T20:22:30Z","rejected_at":null,"last_activity_at":"2015-11-19T20:22:30Z","source":{"id":2,"public_name":"Jobs
|
47
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
48
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
49
|
+
Review"},"answers":[{"question":"Foobar?","answer":null},{"question":"How
|
50
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
51
|
+
Profile","answer":null}]},{"id":21708450,"candidate_id":13381397,"prospect":false,"applied_at":"2015-11-19T20:22:30Z","rejected_at":null,"last_activity_at":"2015-11-19T20:22:30Z","source":{"id":2,"public_name":"Jobs
|
52
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
53
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
54
|
+
Review"},"answers":[{"question":"Foobar?","answer":null},{"question":"How
|
55
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
56
|
+
Profile","answer":null}]},{"id":21708449,"candidate_id":13381396,"prospect":false,"applied_at":"2015-11-19T20:22:30Z","rejected_at":null,"last_activity_at":"2015-11-19T20:22:30Z","source":{"id":2,"public_name":"Jobs
|
57
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
58
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
59
|
+
Review"},"answers":[{"question":"Foobar?","answer":null},{"question":"How
|
60
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
61
|
+
Profile","answer":null}]},{"id":21708451,"candidate_id":13381398,"prospect":false,"applied_at":"2015-11-19T20:22:30Z","rejected_at":null,"last_activity_at":"2015-11-19T20:22:30Z","source":{"id":2,"public_name":"Jobs
|
62
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
63
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
64
|
+
Review"},"answers":[{"question":"Foobar?","answer":null},{"question":"How
|
65
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
66
|
+
Profile","answer":null}]},{"id":21708452,"candidate_id":13381399,"prospect":false,"applied_at":"2015-11-19T20:22:31Z","rejected_at":null,"last_activity_at":"2015-11-19T20:22:31Z","source":{"id":2,"public_name":"Jobs
|
67
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
68
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
69
|
+
Review"},"answers":[{"question":"Foobar?","answer":null},{"question":"How
|
70
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
71
|
+
Profile","answer":null}]},{"id":21708453,"candidate_id":13381400,"prospect":false,"applied_at":"2015-11-19T20:22:31Z","rejected_at":null,"last_activity_at":"2015-11-19T20:22:31Z","source":{"id":2,"public_name":"Jobs
|
72
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
73
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
74
|
+
Review"},"answers":[{"question":"Foobar?","answer":null},{"question":"How
|
75
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
76
|
+
Profile","answer":null}]},{"id":21708454,"candidate_id":13381401,"prospect":false,"applied_at":"2015-11-19T20:22:31Z","rejected_at":null,"last_activity_at":"2015-11-19T20:22:31Z","source":{"id":2,"public_name":"Jobs
|
77
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
78
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
79
|
+
Review"},"answers":[{"question":"Foobar?","answer":null},{"question":"How
|
80
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
81
|
+
Profile","answer":null}]},{"id":21708456,"candidate_id":13381403,"prospect":false,"applied_at":"2015-11-19T20:22:32Z","rejected_at":null,"last_activity_at":"2015-11-19T20:22:32Z","source":{"id":2,"public_name":"Jobs
|
82
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
83
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
84
|
+
Review"},"answers":[{"question":"Foobar?","answer":null},{"question":"How
|
85
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
86
|
+
Profile","answer":null}]},{"id":21708460,"candidate_id":13381407,"prospect":false,"applied_at":"2015-11-19T20:22:35Z","rejected_at":null,"last_activity_at":"2015-11-19T20:22:35Z","source":{"id":2,"public_name":"Jobs
|
87
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
88
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
89
|
+
Review"},"answers":[{"question":"Foobar?","answer":null},{"question":"How
|
90
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
91
|
+
Profile","answer":null}]},{"id":21708585,"candidate_id":13381528,"prospect":false,"applied_at":"2015-11-19T20:26:25Z","rejected_at":null,"last_activity_at":"2015-11-19T20:26:25Z","source":{"id":2,"public_name":"Jobs
|
92
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
93
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
94
|
+
Review"},"answers":[{"question":"Foobar?","answer":null},{"question":"How
|
95
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
96
|
+
Profile","answer":null}]},{"id":21708586,"candidate_id":13381530,"prospect":false,"applied_at":"2015-11-19T20:26:25Z","rejected_at":"2016-01-26T23:57:35Z","last_activity_at":"2016-01-26T23:57:35Z","source":{"id":2,"public_name":"Jobs
|
97
|
+
page on your website"},"credited_to":null,"rejection_reason":{"id":14,"name":"None
|
98
|
+
specified","type":{"id":3,"name":"None specified"}},"jobs":[{"id":144371,"name":"Good
|
99
|
+
Cop"}],"status":"rejected","current_stage":{"id":1031644,"name":"Offer"},"answers":[{"question":"Foobar?","answer":null},{"question":"How
|
100
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
101
|
+
Profile","answer":null}]},{"id":21708588,"candidate_id":13381531,"prospect":false,"applied_at":"2015-11-19T20:26:26Z","rejected_at":null,"last_activity_at":"2015-11-19T20:26:26Z","source":{"id":2,"public_name":"Jobs
|
102
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
103
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
104
|
+
Review"},"answers":[{"question":"Foobar?","answer":null},{"question":"How
|
105
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
106
|
+
Profile","answer":null}]},{"id":21769983,"candidate_id":13440415,"prospect":false,"applied_at":"2015-11-20T22:25:49Z","rejected_at":null,"last_activity_at":"2015-11-20T22:25:49Z","source":{"id":2,"public_name":"Jobs
|
107
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
108
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
109
|
+
Review"},"answers":[{"question":"Yeah?","answer":"Five"},{"question":"Huh?","answer":"Yes"},{"question":"What?","answer":"wfawfe"},{"question":"Foobar?","answer":"sgerag"},{"question":"How
|
110
|
+
did you hear about this job?","answer":"fawefaewttag"},{"question":"Website","answer":"afwaefw"},{"question":"LinkedIn
|
111
|
+
Profile","answer":"wafawefaw"}]},{"id":21772362,"candidate_id":13442759,"prospect":false,"applied_at":"2015-11-20T22:33:14Z","rejected_at":null,"last_activity_at":"2015-11-20T22:33:14Z","source":{"id":2,"public_name":"Jobs
|
112
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
113
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
114
|
+
Review"},"answers":[{"question":"Yeah?","answer":"Five"},{"question":"Huh?","answer":"Yes"},{"question":"What?","answer":"wfawfe"},{"question":"Foobar?","answer":"sgerag"},{"question":"How
|
115
|
+
did you hear about this job?","answer":"fawefaewttag"},{"question":"Website","answer":"afwaefw"},{"question":"LinkedIn
|
116
|
+
Profile","answer":"wafawefaw"}]},{"id":21772559,"candidate_id":13442958,"prospect":false,"applied_at":"2015-11-20T22:33:45Z","rejected_at":null,"last_activity_at":"2015-11-20T22:33:45Z","source":{"id":2,"public_name":"Jobs
|
117
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
118
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
119
|
+
Review"},"answers":[{"question":"Yeah?","answer":"Five"},{"question":"Huh?","answer":"Yes"},{"question":"What?","answer":"wfawfe"},{"question":"Foobar?","answer":"sgerag"},{"question":"How
|
120
|
+
did you hear about this job?","answer":"fawefaewttag"},{"question":"Website","answer":"afwaefw"},{"question":"LinkedIn
|
121
|
+
Profile","answer":"wafawefaw"}]},{"id":21772681,"candidate_id":13443080,"prospect":false,"applied_at":"2015-11-20T22:34:04Z","rejected_at":null,"last_activity_at":"2015-11-20T22:34:03Z","source":{"id":2,"public_name":"Jobs
|
122
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
123
|
+
Cop"}],"status":"active","current_stage":{"id":1031639,"name":"Application
|
124
|
+
Review"},"answers":[{"question":"Yeah?","answer":"Five"},{"question":"Huh?","answer":"Yes"},{"question":"What?","answer":"wfawfe"},{"question":"Foobar?","answer":"sgerag"},{"question":"How
|
125
|
+
did you hear about this job?","answer":"fawefaewttag"},{"question":"Website","answer":"afwaefw"},{"question":"LinkedIn
|
126
|
+
Profile","answer":"wafawefaw"}]},{"id":21880506,"candidate_id":13549465,"prospect":false,"applied_at":"2015-11-23T19:58:34Z","rejected_at":null,"last_activity_at":"2016-01-26T23:59:27Z","source":{"id":2,"public_name":"Jobs
|
127
|
+
page on your website"},"credited_to":null,"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
128
|
+
Cop"}],"status":"active","current_stage":{"id":1031644,"name":"Offer"},"answers":[{"question":"Yeah?","answer":"Three"},{"question":"Huh?","answer":"No"},{"question":"What?","answer":null},{"question":"Foobar?","answer":null},{"question":"How
|
129
|
+
did you hear about this job?","answer":null},{"question":"Website","answer":null},{"question":"LinkedIn
|
130
|
+
Profile","answer":null}]},{"id":22109641,"candidate_id":13769762,"prospect":false,"applied_at":"2015-11-30T22:30:47Z","rejected_at":"2015-11-30T22:30:52Z","last_activity_at":"2015-11-30T22:30:53Z","source":{"id":2,"public_name":"Jobs
|
131
|
+
page on your website"},"credited_to":{"id":158108,"name":"Gordon Zheng"},"rejection_reason":{"id":14,"name":"None
|
132
|
+
specified","type":{"id":3,"name":"None specified"}},"jobs":[{"id":144371,"name":"Good
|
133
|
+
Cop"}],"status":"rejected","current_stage":{"id":1031639,"name":"Application
|
134
|
+
Review"},"answers":[]},{"id":24709881,"candidate_id":13769693,"prospect":false,"applied_at":"2016-01-26T23:58:09Z","rejected_at":null,"last_activity_at":"2016-01-26T23:59:07Z","source":{"id":2,"public_name":"Jobs
|
135
|
+
page on your website"},"credited_to":{"id":158108,"name":"Gordon Zheng"},"rejection_reason":null,"jobs":[{"id":144371,"name":"Good
|
136
|
+
Cop"}],"status":"hired","current_stage":null,"answers":[]}]'
|
137
|
+
http_version:
|
138
|
+
recorded_at: Wed, 27 Jan 2016 18:09:18 GMT
|
139
|
+
recorded_with: VCR 3.0.1
|
@@ -0,0 +1,43 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://123FakeToken:@harvest.greenhouse.io/v1/applications
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers: {}
|
10
|
+
response:
|
11
|
+
status:
|
12
|
+
code: 200
|
13
|
+
message: OK
|
14
|
+
headers:
|
15
|
+
Content-Type:
|
16
|
+
- application/json;charset=utf-8
|
17
|
+
Date:
|
18
|
+
- Wed, 23 Apr 2014 23:45:18 GMT
|
19
|
+
Link:
|
20
|
+
- "<https://harvest.greenhouse.io/v1/applications?page=2&per_page=100>; rel=\"next\""
|
21
|
+
Status:
|
22
|
+
- 200 OK
|
23
|
+
X-Content-Type-Options:
|
24
|
+
- nosniff
|
25
|
+
X-Ratelimit-Limit:
|
26
|
+
- '20'
|
27
|
+
X-Ratelimit-Remaining:
|
28
|
+
- '20'
|
29
|
+
Content-Length:
|
30
|
+
- '29003'
|
31
|
+
Connection:
|
32
|
+
- keep-alive
|
33
|
+
body:
|
34
|
+
encoding: UTF-8
|
35
|
+
string: "[{\"id\":1,\"person_id\":1,\"prospect\":false,\"applied_at\":\"2012-03-15T00:00:00Z\",\"last_activity_at\":\"2013-10-23T16:00:33Z\",\"source\":{\"id\":700,\"public_name\":\"Legacy
|
36
|
+
Resumator Sources\"},\"credited_to\":null,\"jobs\":[{\"id\":4385,\"name\":\"Educational
|
37
|
+
Programs Producer\"}],\"status\":\"active\",\"current_stage\":{\"id\":1,\"name\":\"Preliminary
|
38
|
+
Phone Screen\"}},{\"id\":1,\"person_id\":1,\"prospect\":false,\"applied_at\":\"2012-03-17T00:00:00Z\",\"last_activity_at\":\"2013-10-23T16:00:33Z\",\"source\":null,\"credited_to\":null,\"jobs\":[{\"id\":4385,\"name\":\"Educational
|
39
|
+
Programs Producer\"}],\"status\":\"accepted\",\"current_stage\":{\"id\":12,\"name\":\"Application
|
40
|
+
Review\"}}]"
|
41
|
+
http_version:
|
42
|
+
recorded_at: Wed, 23 Apr 2014 23:45:19 GMT
|
43
|
+
recorded_with: VCR 2.5.0
|