Giter Site home page Giter Site logo

vivektomar03 / job-listing-backend Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 51 KB

Welcome to the documentation for the backend of the Job Posting Application. This document provides an overview of the available API endpoints and their functionalities.

Home Page: https://jon-listing-app.vercel.app/

JavaScript 100.00%
chakraui css expressjs javascript mongodb nodejs reactjs redux

job-listing-backend's Introduction

Job Posting Application Backend Documentation

Welcome to the documentation for the backend of the Job Posting Application. This document provides an overview of the available API endpoints and their functionalities.

Base URL: https://match-your-role.onrender.com

User Endpoints

Register a New User

Create a new user account.

  • Endpoint: /user/register
  • Method: POST
  • Request Body:
    • email (string): User's email
    • password (string): User's password
  • Response:
    • message: Registration success message

User Login

Log in with an existing user account and get a JWT token.

  • Endpoint: /user/login
  • Method: POST
  • Request Body:
    • email (string): User's email
    • password (string): User's password
  • Response:
    • token: JWT token for authentication
    • message: Login success message

Job Endpoints

Create a New Job Listing

Create a new job listing.

  • Endpoint: /user/job/create
  • Method: POST
  • Request Body:
    • title (string): Job title
    • company (string): Company name
    • location (string): Job location
    • description (string): Job description
    • ctc (string): Compensation package
    • opening (number): Number of job openings
  • Response:
    • message: Job listing creation success message

Get All Job Listings

Get a list of all job listings with pagination and search options.

  • Endpoint: /user/job
  • Method: GET
  • Query Parameters:
    • page (number, optional): Page number for pagination (default: 1)
    • limit (number, optional): Number of items per page (default: 10)
    • search (string, optional): Search query for filtering job listings by title or company
  • Response:
    • data: Array of job listings
    • currentPage: Current page number
    • totalPages: Total number of pages

Get Details of a Job Listing

Get details of a specific job listing by its ID.

  • Endpoint: /user/job/:id
  • Method: GET
  • Response:
    • Job details object

Update a Job Listing

Update details of a specific job listing by its ID.

  • Endpoint: /user/job/:id
  • Method: PUT
  • Request Body: Same fields as create endpoint
  • Response:
    • message: Job listing update success message
    • Updated job details object

Delete a Job Listing

Delete a specific job listing by its ID.

  • Endpoint: /user/job/:id
  • Method: DELETE
  • Response:
    • message: Job listing delete success message

Apply for a Job Listing

Apply for a specific job listing.

  • Endpoint: /user/job/:id/apply
  • Method: POST
  • Response:
    • message: Job application submission success message

Get List of Applications for a Job Listing

Get a list of applications for a specific job listing.

  • Endpoint: /user/job/:id/applications
  • Method: GET
  • Response:
    • applications: Array of user IDs who have applied

Chat Endpoints (Example)

These endpoints are used for chat functionality.

  • Endpoint: /user/chat/create

  • Method: POST

  • Create a new chat room.

  • Endpoint: /user/chat/:roomId/message

  • Method: POST

  • Send a message in a chat room.

  • Endpoint: /user/chat/:roomId/messages

  • Method: GET

  • Get messages from a chat room.

Authentication

JWT (JSON Web Token) is used for user authentication. To access protected routes, include the JWT token in the Authorization header of the request.

  • Header: Authorization: Bearer <token>

Note: Replace <token> with the actual JWT token obtained after logging in.

For more details on request and response structures, error handling, and usage examples, refer to the source code and API endpoint descriptions.

For frontend documentation and other application details, refer to the frontend repository.

For any inquiries or issues, please contact [email protected].

job-listing-backend's People

Contributors

vivektomar03 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.