# Change logs

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/), [Sample Changelog](https://gist.github.com/juampynr/4c18214a8eb554084e21d6e288a18a2c) and this project adheres to [Semantic Versioning](http://semver.org/).&#x20;

### \[0.5.0] - 2021-12-27

**Added**

* \[API] - Cancel email API for removing a scheduled email.
* \[API] - Reschedule email API for rescheduled email with new date.
* \[Dependencies] - Added "uuid" package.

#### Changed

* \[API] - Added 2 new properties (`cancelID` and `rescheduleID`) in send email API response. `cancelID` is used for cancelling a scheduled email, where `rescheduleID` is for rescheduling email with new date. For non-scheduled email, `cancelID` and `rescheduleID` will not be shown in the response.
* \[Development]: Separate date to ms logic to "/helpers/time.ts".
* \[Development]: Added 2 custom error to handle invalid job id and cancel job.

### \[0.4.2] - 2021-12-22

#### Added

* \[Development] - Add auto extract redis credential function in config file. Previously used hard code configuration but is not suitable since heroku-redis change credential at random time, hence it may cause some issues with manual config method.

#### Changed

* Update redis config

### \[0.4.1] - 2021-12-13

#### Added

* Enable cors&#x20;

### \[0.4.0] - 2021-11-29

#### Added

* Remove job when completed/failed automatically

### \[0.3.0] - 2021-11-26

#### Added

* Add encryption to data when job is inserted into queue

### \[0.2.0] - 2021-11-26

#### Added

* Add  `send_at` and `timezone` fields to API endpoints for sending email at specific datetime. (Less stable because the server is using default heroku hobby plan)&#x20;

### \[0.1.1] - 2021-11-24

#### Changed

* Make `callback_url` as optional.
* Update config connection for production & development.

#### Fixed

* Fix PLAIN error when send email.

### \[0.1.0] - 2021-11-23

#### Added

* Send email to another gmail.
* Default retry attempt (5 times) to send request to your server after sending email, if your server is live during the attempt process, request will be sent to your server.
* Get notification if Simplemail not able to send request to your server automatically. ( `smtp_user` and `smtp_pass` must be valid).
* Raw HTML content in mail body (you can pass anything like \<a href="to\_*your*\_server"> that can let users click and redirect to your web/app).
