{"id":27148187,"url":"https://github.com/dias1c/aws-ses-bulk-emails","last_synced_at":"2026-03-05T04:02:08.361Z","repository":{"id":155099976,"uuid":"588815579","full_name":"Dias1c/aws-ses-bulk-emails","owner":"Dias1c","description":"📧 CLI which bulk send emails on AWS SES engine","archived":false,"fork":false,"pushed_at":"2025-02-02T10:34:23.000Z","size":60,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-02-19T16:56:40.296Z","etag":null,"topics":["aws-letter-sender","aws-sdk-go","aws-ses","aws-ses-bulk-emails","cli","golang","simple-email-sender"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Dias1c.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-01-14T05:10:10.000Z","updated_at":"2025-02-11T12:14:11.000Z","dependencies_parsed_at":null,"dependency_job_id":"b6d2e9d2-dc1a-4822-bd6f-cafd98a5b756","html_url":"https://github.com/Dias1c/aws-ses-bulk-emails","commit_stats":null,"previous_names":["dias1c/aws-ses-bulk-emails","dias1c/aws-letter-sender"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/Dias1c/aws-ses-bulk-emails","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dias1c%2Faws-ses-bulk-emails","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dias1c%2Faws-ses-bulk-emails/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dias1c%2Faws-ses-bulk-emails/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dias1c%2Faws-ses-bulk-emails/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Dias1c","download_url":"https://codeload.github.com/Dias1c/aws-ses-bulk-emails/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dias1c%2Faws-ses-bulk-emails/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30109076,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-05T03:40:26.266Z","status":"ssl_error","status_checked_at":"2026-03-05T03:39:15.902Z","response_time":93,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws-letter-sender","aws-sdk-go","aws-ses","aws-ses-bulk-emails","cli","golang","simple-email-sender"],"created_at":"2025-04-08T11:53:12.168Z","updated_at":"2026-03-05T04:02:08.310Z","avatar_url":"https://github.com/Dias1c.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# aws-ses-bulk-emails\n\n[![GitHub release](https://img.shields.io/github/release/Dias1c/aws-ses-bulk-emails.svg?style=flat-square)](https://github.com/Dias1c/aws-ses-bulk-emails/releases/latest)\n\nBulk emails using [AWS SES](https://aws.amazon.com/ses/) with [HTML](https://pkg.go.dev/html/template)/[text](https://pkg.go.dev/text/template) templates support.\n\n## Quick Send\n\n1. Create `.env` from `example.env`\n2. Create your template in `templates` folder\n3. Prepare `data.csv`:\n\n```csv\nEMAIL\nuser1@example.com\nuser2@example.com\n```\n\n4. Run:\n\n```bash\n./aws_ses_bulk_emails --data-file=\"data.csv\" --email-sender=\"sender@email.com\" --subject=\"Subject\" --tmpl-file=\"templates/example.html\"\n```\n\n\u003e [!NOTE]\n\u003e You can run using golang. Just replace above `./aws_ses_bulk_emails` to `go run ./cmd/quick/main.go`\n\n## Advanced Usage\n\n### Running Without Flags\n\nYou can run program without any flags\n\n```\ngo run ./cmd/quick/main.go\n```\n\nRequired params will be taken from `data.csv` and `.env` files.\n\n\u003e [!TIP]\n\u003e Program supports flag `-h`\n\u003e\n\u003e ```sh\n\u003e go run ./cmd/quick/main.go -h  # Show all available options\n\u003e ```\n\n### Log results\n\nProgram logs all email sending attempts to `.history.log`.\n\n### Data File\n\nData file (which is .csv) that defines email settings and template variables.\n\n\u003e [Read about .csv file](https://en.wikipedia.org/wiki/Comma-separated_values)\n\nAdvanced `data.csv` example:\n\n```csv\nEMAIL,TEMPLATE_FILE,SUBJECT,name\nexample@example.com,templates/example.html,My Example subject,Dias1c\nexample@example.com,templates/example.txt,Text letter,MyName\nexample@example.com,,,\n```\n\nExplaining variable keys:\n\n| key             | variable | description                     |\n| --------------- | -------- | ------------------------------- |\n| `EMAIL`         | system   | variable, recipient email       |\n| `TEMPLATE_FILE` | system   | variable, path to template file |\n| `SUBJECT`       | system   | variable, letter subject        |\n| `name`          | user     | variable                        |\n\n\u003e [!NOTE]\n\u003e For the last row with empty columns, the values ​​for those columns will be taken from the `program arguments` or `env` file.\n\n#### System data Variables\n\nSystem reserved variables are named with capital letters. Each system variable has its own function.\n\n| key             | type     | function              |\n| --------------- | -------- | --------------------- |\n| `EMAIL`         | required | recipient email       |\n| `TEMPLATE_FILE` | optional | path to template file |\n| `SUBJECT`       | optional | letter subject        |\n| `SENDER_EMAIL`  | optional | aws sender email      |\n| `SENDER_REGION` | optional | aws region            |\n\nAll optional variable values ​​are taken from the arguments passed to the program or from the `.env` file.\n\nVariables that are not system keys will be used as variables for templates.\n\n### Parameters Priority\n\nProgram uses priority system to resolve conflicts when same parameter is set in multiple places:\n\n| Priority | Source        | Example                               |\n| -------- | ------------- | ------------------------------------- |\n| High     | Data file     | `data.csv`: SUBJECT=Welcome           |\n| Medium   | Command flags | `--subject=\"Hello\"` as flag on launch |\n| Low      | .env file     | `SUBJECT=Hi` in .env                  |\n\n### Templates\n\n#### HTML\n\n```html\n\u003ch1\u003eWelcome {{.name}}!\u003c/h1\u003e\n\u003cp\u003eYour activation code {{.code}} for {{.EMAIL}}\u003c/p\u003e\n```\n\n#### Text\n\n```\n--- {{.EMAIL}}\nDear {{.name}},\nYour order #{{.orderId}} completed\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdias1c%2Faws-ses-bulk-emails","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdias1c%2Faws-ses-bulk-emails","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdias1c%2Faws-ses-bulk-emails/lists"}