Taskify is an application that allows users to manage tasks efficiently. This API documentation provides details on the available endpoints and how to interact with them. Taskify is built using FastAPI, JWT (JSON Web Tokens), SQLAlchemy, and Pydantic to ensure secure and efficient task management.
Taskify API follows RESTful API design principles effectively by:
- Organizing around resources. User , Task...
- Using appropriate HTTP methods.
- Naming endpoints descriptively. task/{task_id}
- Implementing authentication. using JWT
- Structuring documentation logically.
- Properly handling errors. using HTTPException & pydantic
- Summarizing the API's purpose.
Taskify is a task management application that provides a set of RESTful API endpoints for creating, updating, and managing tasks. To use these endpoints, users need to register, login, and obtain an authentication token, which should be included in the request headers for authentication.
- HTTP Method: POST
- Endpoint:
/register
- Description: Allows users to register for the Taskify app. Users must provide a username, password.
- HTTP Method: POST
- Endpoint:
/login
- Description: Allows users to log in and obtain an authentication token, which is required to access task-related endpoints.
- HTTP Method: GET
- Endpoint:
/token
- Description: Verifies a user's token, decodes it, and provides user ID, name, and token expiration time.
- HTTP Method: GET
- Endpoint:
/health
- Description: Checks the health status of the application. A successful response indicates that the application is running smoothly.
- HTTP Method: POST
- Endpoint:
/tasks
- Description: Enables users to create a new task by providing task details such as Task Name, Description, Due Date, and Status.
- HTTP Method: GET
- Endpoint:
/tasks
- Description: Retrieves a list of all tasks created by the authenticated user.
- HTTP Method: GET
- Endpoint:
/tasks/{task_id}
- Description: Retrieves a specific task by its unique ID. Users can access only their own tasks.
- HTTP Method: PUT
- Endpoint:
/tasks/{task_id}
- Description: Allows users to update a specific task by providing the task ID and updated task details.
- HTTP Method: DELETE
- Endpoint:
/tasks/{task_id}
- Description: Enables users to delete a specific task by its ID.
- HTTP Method: PATCH
- Endpoint:
/tasks/{task_id}/status
- Description: Allows users to update the status of a specific task. This endpoint is useful for marking tasks as completed or in progress.
Taskify is a task management application that provides a straightforward API for managing tasks. Users can register, log in, and utilize various endpoints to create, retrieve, update, and delete tasks efficiently. The API ensures security through token-based authentication and follows RESTful API design principles for a user-friendly experience.