This is a private Node.js server that runs subscription updates once daily. It only runs updates for subscriptions whose expiration_date are a few days before and after the current date.
The expiration_date date range that Renewer checks daily are determined by the Parameter Store values in START_DAYS_AGO and END_DAYS_LATER. For example, if these values are 2 and 5 respectively, and the current date is October 8th, then all subscription rows in the database with expiration_date of October 6th to October 13th will be updated.
Subscriptions in the database need to be updated daily in order to track status changes of user subscriptions. For example, if a user renews their iOS subscription, Renewer updates the that user's subscription entry in our database so that we continue to allow the user access to the VPN service.
Renewer can also be manually triggered to update a specific set of subscriptions, described in the APIs below.
- Run the Renewer CloudFormation and all its prerequisites
- (For Manual Usage) Add your machine's IP to the Inbound rules of the Renewer instance's Security Group
Once deployed, every day at 12:50 UTC the Renewer updates all subscription rows with expiration_date between the START_DAYS_AGO and END_DAYS_LATER date range.
Basic counts of successful and failed updates are published to CloudWatch Metrics. Detailed logs of updates are published to CloudWatch Logs.
Updates all subscription rows with expiration_date between the START_DAYS_AGO and END_DAYS_LATER date range.
Request
GET /renew
Response
Status: 200 OK
{
message: OK
}
Request
GET /renew-all
Response
Status: 200 OK
{
message: OK
}
Request
GET /renew-user
| Name | Type | Description |
|---|---|---|
id |
string |
Required The ID of the user whose subscriptions you wish to update. |
Response
Status: 200 OK
{
message: [id] check started.
}
Request
GET /renew-all
Response
Status: 200 OK
{
message: Failed check started.
}
Request
GET /health
Response
Status: 200 OK
{
message: OK
}
If you have any questions, concerns, or other feedback, please let us know any feedback in Github issues or by e-mail.
We also have a bug bounty program -- please email engineering@confirmedvpn.com for details.
This project is licensed under the GPL License - see the LICENSE.md file for details