These pages contains a description of the BeWorkHappy API which allows you to manage and display information from all its available resources.

Authentication


Authentication is done using OAuth. OAuth applications and authorization codes can be managed through the webinterface available at /oauth/applications.

Once an access/authentication code/token has been obtained it can be used to access the API. Take note that all API calls HAVE to contain the access token, even though this is not explicitely defined for each call.

The preferred way to pass the authentication token along is with the 'Authorization' parameter in the request header as follows:

Authorization: Bearer ACCESS_TOKEN_HERE

Depending on the user that the token belongs to, access rights to certain parts of the API may differ.

Resources

Analysis
Perform analyses calls

Resource Description
POST /api/v1/analyse Perform a short analysis of the document. This is a multipart request

Companies
Show and manage companies

Resource Description
GET /api/v1/companies List companies
GET /api/v1/company/:id Show a company
POST /api/v1/companies Creates a company
PUT /api/v1/company/:id Update a company
DELETE /api/v1/company/:id Destroy a company

Cvs

Resource Description
POST /api/v1/user/cv Adds/updates a CV from/to a user
DELETE /api/v1/user/cv Deletes CV from user

Dna

Resource Description
GET /api/v1/dna Show the dna data for a job/cv OR the match dna data for a job/cv match.
PUT /api/v1/dna/add Add a word to the DNA.
PUT /api/v1/dna/delete Delete a word from the DNA.

Favorites

Resource Description
GET /api/v1/user/favorites Get user favorites
POST /api/v1/user/favorites Add a favorite job/apply for a job
DELETE /api/v1/user/favorites/:id Delete a favorite/application

File proxy

Resource Description
GET /api/v1/files/:type/:id/binary

Ignoreds

Resource Description
GET /api/v1/user/ignoreds Get user ignoreds
GET /api/v1/user/company_ignoreds Get user company ignoreds
POST /api/v1/user/ignoreds Hide/ignore a match
POST /api/v1/user/company_ignoreds Hide/ignore a company
delete /api/v1/user/ignoreds/:id Delete a ignored
delete /api/v1/user/company_ignoreds/:id Delete a ignored

Job matches
Show job matches

Resource Description
GET /api/v1/job/:job_id/matches Shows candidate matches for job with id :job_id
GET /api/v1/job/:job_id/match/:user_id Show a job match
PUT /api/v1/job/:job_id/match/:user_id/read Mark a resume as read for a job

Jobs
Show and manage jobs

Resource Description
GET /api/v1/jobs List jobs
GET /api/v1/job/:id Show a job
GET /api/v1/job Show a job identified by external reference
POST /api/v1/jobs Creates a job. NOTE: Take care that this call has to be made in a 'multipart/form-data' format to transfer the 'file' parameter!
PUT /api/v1/job/:id Update a job
DELETE /api/v1/job/:id Destroy a job
POST /api/v1/job/:id/matches/download Download all matches for a job

Lexicon
Fetch a list of suggestions

Resource Description
GET /api/v1/lexicon Perform a quickmatch that will return a list of candidates

Profile quickmatch
Do a profile quickmatch

Resource Description
POST /api/v1/quickmatch Perform a quickmatch that will return a list of profiles

Quickmatch
Do a cv quickmatch

Resource Description
POST /api/v1/quickmatch Perform a quickmatch that will return a list of candidates

Ratings

Resource Description
GET /api/v1/ratings/:job Get ratings for job
POST /api/v1/ratings/:job/:cv Set a rating for a match

Recruiter groups
[ADMIN ONLY] Show and manage recruiter groups

Resource Description
GET /api/v1/recruiter_groups [ADMIN ONLY] List recruiter groups
GET /api/v1/recruiter_group/:id Show a recruiter group
POST /api/v1/recruiter_groups [ADMIN ONLY] Creates a recruiter group
PUT /api/v1/recruiter_group/:id Update a recruiter group
DELETE /api/v1/recruiter_group/:id Destroy a recruiter group

Recruiters
Show and manage recruiter accounts

Resource Description
GET /api/v1/recruiters List recruiters
GET /api/v1/recruiter/:id Show a recruiter
POST /api/v1/recruiters Creates a recruiter
PUT /api/v1/recruiter/:id Update a recruiter
DELETE /api/v1/recruiter/:id Destroy a recruiter

User matches

Resource Description
GET /api/v1/user/matches Get the matches for a user
GET /api/v1/user/matches/:job_id Get match details for user and job

Users

Resource Description
GET /api/v1/user Show an user
GET /api/v1/jobseekers List jobseekers
GET /api/v1/user/:id Get a user
GET /api/v1/users/stats
GET /api/v1/jobs/count
POST /api/v1/signup Registers a user
POST /api/v1/user/session Get a session token
PUT /api/v1/user Updates a user
DELETE /api/v1/user Deletes a user
DELETE /api/v1/user/:id Deletes a user