This batch application was built to enable the daily gudsis contact import to Mailjet (Sub accounts) contact list (SYENSQO CONTACTS).
We have x numbers of sub accounts setup in Mailjet, and individual sub account have a dedicated contact list (SYENSQO CONTACTS) which has to be updated on daily basis.
Major features:

Source repository
| Project | Repository |
|---|---|
| Gudsis File Upload to Mailjet | https://gitlab.syensqo.com/syensqo-it-infra-workplace/syensqo-it-mailjet/gudsis-file-upload-to-mailjet |
| Mailjet-Cleanup | https://gitlab.syensqo.com/syensqo-it-infra-workplace/syensqo-it-mailjet/mailjet-cleanup |
Good to know:
Source Code Filters:
Technical Details:
Total Syensqo Sub-accounts: 27
Mailjet API call Threshold: 600 API call per minute (Exception will be thrown by Mailjet system if we exceed this limit)
Number of API Calls= Number of sub-accounts * Number of records deleted per minute * Number of API call for one email deletion
Number of API call for one email deletion:2
Current configuration: 500= 50 * 5 * 2
#Delete Batch size |
|---|
Cloud functions are configured in Gitlab Pipeline for easy deployment. To deploy manually, refer to Readme file in the source code.
We have 2 cloud functions for Gudsis to Mailjet import:
Gudsis Mailjet Upload - Gitlab: Link || GCP cloud function: Link
Gudsis Mailjet Cleanup - Gitlab: Link || GCP cloud function: Link
Gitlab Deployment:
| Steps | Screenshots |
|---|---|
| 1. Checkout the develop branch from Gitlab and and push the code changes to develop branch. |
|
| 2. Gitlab pipeline is configured to deploy the develop branch automatically into the staging environment when the code changes are pushed/merged to develop branch. |
|
| 3. When the code is merged from develop branch to master branch, a job is created in the Gitlab environments (Production) which need to be triggered manually to deploy the master branch in production. |
|