Welcome to the Handler Images API project! This API allows users to manage their accounts, upload images, resize images, and perform various image-related tasks. Below, you'll find instructions on how to set up, use, and interact with the API endpoints.
To get started with the Handler Images API, follow these steps:
- Clone the repository.
- Install the required dependencies.
- Run the FastAPI application.
git clone https://github.com/AndyInBits/api-remove-background-images-fast-api.git
cd api-remove-background-images-fast-api
docker-compose up --buildThe API will be accessible at http://127.0.0.1. The API DOC will be accessible at http://127.0.0.1/docs.
Endpoint: POST /users
Create a new user by providing their email, password, password confirmation, and full name.
Endpoint: PUT /user
Update the current user's email and full name. Requires authentication with a valid JWT token.
Endpoint: DELETE /user
Delete the current user's account. Requires authentication with a valid JWT token.
Endpoint: POST /login
Login with a registered user's email and password to receive an authentication token.
Endpoint: POST /process_images
Upload an image and optionally specify the output format, width, and height for image processing. Requires authentication with a valid JWT token.
Endpoint: GET /my_images
Retrieve a list of images uploaded by the current user. Requires authentication with a valid JWT token.
Endpoint: DELETE /delete_image/{id}
Delete an image by providing its ID. Requires authentication with a valid JWT token.
Congratulations! You now have the basic understanding of how to use the Handler Images API. Feel free to explore the various endpoints and functionalities to create users, manage images, and perform image processing tasks. If you have any questions or encounter issues, refer to the API documentation or contact the project maintainers for assistance. Happy coding!
FastAPI is a Python framework designed to streamline the development of efficient APIs. With its clean syntax and declarative data types, FastAPI simplifies route definition, data validation, and interactive documentation generation.
Redis is a high-speed, in-memory database. It excels at caching data to enhance access speed for frequently used information. Within the context of an API, Redis serves to store pre-computed results, mitigating server load.
Docker is a containerization platform that packages applications and their dependencies into isolated containers. This ensures consistent execution across diverse environments, facilitating deployment and scalability.
Docker Compose simplifies multi-container applications by allowing you to define and manage services, networks, and volumes within a single configuration. This streamlines the deployment of intricate applications comprising multiple components.
JSON Web Tokens provide a secure means of transmitting information between parties. They are compact and self-contained, often used for user authentication and authorization within APIs. JWTs ensure users access only authorized resources.
REST (Representational State Transfer) is an architectural style for building web services. RESTful APIs employ standard HTTP methods (GET, POST, PUT, DELETE) to interact with resources via URIs. This approach fosters efficient and scalable web interfaces.
