Skip to content

oduyemi/flyjobs_api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Job Board API

This project is a job board API built using the FastAPI framework. It provides endpoints for users to create, read, update, and delete job postings and applicant information. The API also supports authentication using a username and password system.

Features:

  • Create, read, update, and delete job postings
  • Create, read, update, and delete applicant information
  • Simple authentication using a username and password system
  • Easy to deploy and scale

Installation:

To install the API, run the following command:

pip install job-board-api

Usage:

To start the API, run the following command:

uvicorn main:app --reload

The API will be running on http://localhost:8000.

Endpoints:

The following endpoints are available:

Authentication:

  • /login (POST): Authenticate a user and return a JSON Web Token (JWT).
  • /logout (POST): Invalidate a user's JWT.

Job Postings:

  • /job_postings (GET): Get a list of all job postings.
  • /job_postings/{id} (GET): Get a specific job posting by ID.
  • /job_postings (POST): Create a new job posting.
  • /job_postings/{id} (PUT): Update a job posting.
  • /job_postings/{id} (DELETE): Delete a job posting.

Applicants:

  • /applicants (GET): Get a list of all applicants.
  • /applicants/{id} (GET): Get a specific applicant by ID.
  • /applicants (POST): Create a new applicant.
  • /applicants/{id} (PUT): Update an applicant.
  • /applicants/{id} (DELETE): Delete an applicant.

Example:

To create a new job posting, send a POST request to the /job_postings endpoint with the following JSON body:

{
  "title": "Software Engineer",
  "description": "We are looking for a talented and experienced Software Engineer to join our team. The ideal candidate will have a strong understanding of Python, Django, and React.",
  "location": "San Francisco, CA"
}

If the request is successful, the API will return a JSON response with the following information:

{
  "id": 1,
  "title": "Software Engineer",
  "description": "We are looking for a talented and experienced Software Engineer to join our team. The ideal candidate will have a strong understanding of Python, Django, and React.",
  "location": "San Francisco, CA",
  "created_at": "2023-10-08T20:40:32.000Z"
}

Authentication:

To authenticate with the API, send a POST request to the /login endpoint with your username and password in the JSON body. If the request is successful, the API will return a JSON response with a JWT.

You can then include the JWT in all subsequent requests to the API.

Deployment:

To deploy the API to a production environment, you can use a cloud hosting service such as Heroku or AWS Elastic Beanstalk.

Contributing:

If you would like to contribute to this project, please feel free to open a pull request. We welcome all feedback and contributions.

License:

This project is licensed under the MIT License.

Contact:

If you have any questions or feedback, please feel free to contact us at

About

A job board API using the FastAPI framework.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •