0% found this document useful (0 votes)
18 views

Assignment-Software Engineer

The document outlines requirements for designing a RESTful API for a hotel booking platform. It specifies implementing user authentication with JWT tokens, booking operations like search and cancel, authorization checks, error handling, and designing for scalability with factors like indexing and caching.

Uploaded by

anupthakurkumar
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views

Assignment-Software Engineer

The document outlines requirements for designing a RESTful API for a hotel booking platform. It specifies implementing user authentication with JWT tokens, booking operations like search and cancel, authorization checks, error handling, and designing for scalability with factors like indexing and caching.

Uploaded by

anupthakurkumar
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Assignment: Building a RESTful API

for a Blogging Platform


Objective:
Design a RESTful API for a Blogging Platform that allows users to create, read, update, and
delete blog posts. The API should also support user authentication and authorization.

Requirements:

User Authentication:
● Some form of user authentication should be present as part of the API design that
includes: login and session management

Blog Post CRUD Operations:


● Design RESTful API with endpoints for creating, reading, updating, and deleting blog
posts.
● Each blog post should have atleast a title, content, author information, and
timestamp/s.

User Authorization:
● Implement authorization checks to ensure that users can only modify their own blog
posts.
● Define roles (e.g., Admin, Author) and assign appropriate permissions.

Documentation:
● Provide clear and comprehensive API documentation using tools like Swagger or
OpenAPI.

Error Handling:
● Document proper error handling for a few scenarios, and how they would be returned
with meaningful error messages.

Scalability:
● Design the API with scalability in mind. Consider factors like database indexing,
caching, and load balancing.
Submission:

Design Document:
● Provide a high-level design document outlining the architecture, data model, and key
components of your API.

Documentation:
● Include API documentation that details each endpoint, required headers,
request/response formats, and authentication procedures.

Readme File:
● Write a README file that includes information about dependencies, setup
instructions, and any other relevant details.

Evaluation Criteria:
Your assignment will be evaluated based on the following criteria:
● Security: Is the API secure, with proper authentication and authorization
mechanisms in place?
● Documentation: Is the API documentation clear and comprehensive?
● Scalability: Has the API been designed with scalability in mind?
Assignment: Hotel Booking Platform API

Objective:
Design a RESTful API for a Hotel Booking Platform that enables users to search for hotels,
make bookings, view booking details, and cancel bookings. The API should incorporate user
authentication, authorization, proper error handling, and scalability considerations.

Requirements:

User Authentication:
- Implement user authentication with login and session management.
- Use JWT tokens for secure authentication.

Hotel Booking Operations:


- Design API endpoints for hotel search, booking, viewing booking details, and canceling
bookings.
- Include necessary parameters in the API requests (e.g., location, check-in/out dates,
number of guests).

User Authorization:
- Ensure that users can only view and manage their own bookings.
- Introduce roles (e.g., Customer, Admin) with appropriate permissions.

Documentation:
- Provide clear and comprehensive API documentation using tools like Swagger or
OpenAPI.
- Include details on each endpoint, required headers, request/response formats, and
authentication procedures.

Error Handling:
- Document proper error handling for scenarios such as invalid requests, unauthorized
access, not found errors, and internal server errors.
- Return meaningful error messages to aid developers and users.

Scalability:
- Design the API with scalability in mind.
- Consider factors like database indexing, caching mechanisms, and load balancing.

Submission:

Design Document:
● Provide a high-level design document outlining the architecture, data model, and key
components of your API.

Documentation:
● Include API documentation that details each endpoint, required headers,
request/response formats, and authentication procedures.

Readme File:
● Write a README file that includes information about dependencies, setup
instructions, and any other relevant details.

Evaluation Criteria:
Your assignment will be evaluated based on the following criteria:
● Security: Is the API secure, with proper authentication and authorization
mechanisms in place?
● Documentation: Is the API documentation clear and comprehensive?
● Scalability: Has the API been designed with scalability in mind?

This assignment is designed to assess your ability to create a well-documented and secure
RESTful API for a Hotel Booking Platform, considering various aspects such as
authentication, authorization, error handling, and scalability.

You might also like