Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/amir-shiati/email-verification-api
A Fast, Secure, Ready to use, Highly customizable email verifier API.
https://github.com/amir-shiati/email-verification-api
email-sender email-validation email-validation-api email-validator rest-api spring-boot
Last synced: 6 days ago
JSON representation
A Fast, Secure, Ready to use, Highly customizable email verifier API.
- Host: GitHub
- URL: https://github.com/amir-shiati/email-verification-api
- Owner: amir-shiati
- Created: 2022-02-01T07:45:46.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-02-08T21:28:55.000Z (almost 3 years ago)
- Last Synced: 2023-11-08T18:37:31.491Z (about 1 year ago)
- Topics: email-sender, email-validation, email-validation-api, email-validator, rest-api, spring-boot
- Language: Java
- Homepage:
- Size: 52.7 KB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Email verification API
![Screenshot](https://i.postimg.cc/NFst1m6S/Screenshot.png)
# What is this?
A **Fast, Secure, Ready to use, Highly customizable** email verifier API.
# How to use
### Clone the project
git clone https://github.com/amir-shiati/email-verification-api.git
### [Edit the configuration file](#Edit-the-configuration-file)
vi email-verification-api/src/main/resources/application.yml
### Done! Run the project...
mvn spring-boot:run
# Edit the configuration file
open up **application.yml** file (located inside email-verification-api/src/main/resources/) and set the required
information.### set your smtp server information:
```yaml
smtp:
# your smtp server host
host: smtp.your-domain.com
# your smtp server port
port: 587
# your smtp server username
username: your-smtp-username
# your smtp server password
password: your-smtp-password
```### set your database information:
```yaml
datasource:
# database url
jdbc-url: jdbc:postgresql://localhost:5432/your-database-name
# database username
username: your-database-username
# database password
password: your-database-password
```### change jwt user information:
```yaml
security:
jwt:
# jwt username (used to get jwt authentication token)
username: changeme
# jwt password (used to get jwt authentication token)
password: changeme
```## All set!
# Customizing
**You can customize both the code and the html content of the email.**
### Customizing html content of the email:
open up **application.yml** file (located inside email-verification-api/src/main/resources/).
Inside the **html** section change these variables:
```yaml
html:
template:
# path to the html template
path: src/main/resources/templates/
# name of the html template file
file-name: template
# name of the variable used for code inside the html template
variable-name: code
```- **Template file is a html file but because of the templating engine used it must end with a chtml extension!**
- **Indicate where you would want to put the generated code inside the html file using the {$code} tag.**### Customizing the code
Inside the **code** section change these variables:
```yaml
code:
# the length of the code
length: 6
# should it contain digits?
digits: true
# should it contain uppercase letters?
upper: false
# should it contain lowercase letters?
lower: false
# How long should the code be valid?
valid-for-minutes: 5
```# Security
**All the endpoints have been secured using jwt.**
# Endpoints
[Here is the documentation ](https://github.com/amir-shiati/email-verification-api/blob/main/doc.md)# TODO
- [ ] Add post configuration
- [ ] Add a queue
- [ ] Add support for bulk validation
- [ ] Dockerize the project