Skip to content

wolfinj/headhunter-candidates-database

Repository files navigation

“Headhunter’s candidates database” API


API for tracking and organizing candidates for open positions. Using Sql server and .NET6


API Reference

Get collections


Get all candidates

  GET /api/candidates

Get all companies

  GET /api/companies

Get all positions

  GET /api/positions

Get companies where the candidate applied

  GET /api/candidate/{Id}/companies-applied-to
Parameter Type Description
Id int Required. Id of candidate

Get all open positions in the company

  GET /api/company/{id}/positions
Parameter Type Description
Id int Required. Id of company

Get item


Get candidate by ID

  GET /api/candidate/{id}
Parameter Type Description
id int Required. Id of candidate

Get company by ID

  GET /api/company/{id}
Parameter Type Description
id int Required. Id of company

Get position by ID

  GET /api/position/{id}
Parameter Type Description
id int Required. Id of position

Delete item by id


Delete candidate by ID

  DELETE /api/candidate/{id}
Parameter Type Description
id int Required. Id of candidate

Delete company by ID

  DELETE /api/company/{id}
Parameter Type Description
id int Required. Id of company

Delete position by ID

  DELETE /api/position/{id}
Parameter Type Description
id int Required. Id of position

Add item

API consumes JSON raw request


Add candidate

  POST /api/candidate/
{
  "fullName": "string",
  "email": "string",
  "about": "string",
  "skills": [
    "string"
  ]
}
Parameter Type Description
fullName string Required. Full name of candidate
email string Required. Email of candidate
about string Description of candidate
skills string[] Skill array of candidate

Add company

  POST /api/company/
{
  "name": "string",
  "email": "string",
  "description": "string",
  "openPositions": [
    {
      "positionName": "string",
      "description": "string"
    }
  ]
}
Parameter Type Description
name string Required. Full name of company
email string Required. Email of company
description string Description of company
openPositions Position[] Optional Skill array of company
positionName string Required. Name of position
description string Description of position

Add position

  POST /api/position/
{
  "positionName": "string",
  "description": "string"
}
Parameter Type Description
positionName string Required. Name of position
description string Description of position

Add position to company

  PUT /api/companyRequest/{id}/add-positionRequest
{
  "positionName": "string",
  "description": "string"
}
Parameter Type Description
id string Required. Company id
positionName string Required. Name of position
description string Description of position

Add position by id


Add position to candidate

  PUT /api/candidate/{candidateId}/add-position-id/{positionId}
Parameter Type Description
candidateId int Required. Candidate id
positionId int Required. Position id

Add position to company

  PUT /api/company/{companyId}/add-position-id/{positionId}
Parameter Type Description
companyId int Required. Company id
positionId int Required. Position id

Remove position by id


Remove position to candidate

  DELETE /api/candidate/{candidateId}/add-position-id/{positionId}
Parameter Type Description
candidateId int Required. Candidate id
positionId int Required. Position id

Remove position to company

  DELETE /api/company/{companyId}/add-position-id/{positionId}
Parameter Type Description
companyId int Required. Company id
positionId int Required. Position id


About

Web API for managing candidates database

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages