The Basic E-Signature API is a robust solution for electronically signing documents. This API allows users to securely upload documents, create and send signature requests, and manage document signatures. The system leverages Laravel 11 and provides authentication using Laravel Sanctum.
- User registration and login
- Document upload (PDF format only)
- Secure storage of documents and signatures
- Signature request functionality
- Document signing and verification
- Status tracking for documents (e.g., pending, signed)
- PHP 8.3.x
- GD PHP extension
- Install via:
sudo apt install php8.3-gd
- Install via:
- OpenSSL for key generation
- Create private and public keys:
openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048 openssl rsa -pubout -in private_key.pem -out public_key.pem
- Place the keys in the
storage/app/keysandtests/fixturesfolders
- Create private and public keys:
-
Clone the repository:
git clone https://github.com/bandaranaike/basic-e-signature-api.git cd basic-e-signature-api -
Install dependencies:
composer install
-
Set up environment variables: Copy the
.env.examplefile to.envand update the database and mail configuration:cp .env.example .env php artisan key:generate
-
Run migrations:
php artisan migrate
-
Set up storage links:
php artisan storage:link
-
Start the server:
php artisan serve
-
To run all the tests, use this command:
php artisan test
For detailed API documentation, please refer to the DOCUMENTATION.md file.