{"id":15964621,"url":"https://github.com/supriyo-biswas/postbox","last_synced_at":"2026-04-18T14:01:43.087Z","repository":{"id":202946560,"uuid":"708471264","full_name":"supriyo-biswas/postbox","owner":"supriyo-biswas","description":"Email testing server for developers compatible with Mailtrap API","archived":false,"fork":false,"pushed_at":"2026-04-18T12:03:29.000Z","size":182,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-04-18T13:25:11.759Z","etag":null,"topics":["email","email-testing","mailtrap","smtp"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/supriyo-biswas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-10-22T16:57:32.000Z","updated_at":"2026-04-18T12:03:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"f485dc0a-d035-4c5b-a072-02e537f7fcd2","html_url":"https://github.com/supriyo-biswas/postbox","commit_stats":null,"previous_names":["supriyo-biswas/postbox"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/supriyo-biswas/postbox","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/supriyo-biswas%2Fpostbox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/supriyo-biswas%2Fpostbox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/supriyo-biswas%2Fpostbox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/supriyo-biswas%2Fpostbox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/supriyo-biswas","download_url":"https://codeload.github.com/supriyo-biswas/postbox/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/supriyo-biswas%2Fpostbox/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31971489,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["email","email-testing","mailtrap","smtp"],"created_at":"2024-10-07T17:03:03.068Z","updated_at":"2026-04-18T14:01:38.064Z","avatar_url":"https://github.com/supriyo-biswas.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Postbox: Email testing server for developers\n\nPostbox is an email testing server for developers. It acts as a local SMTP server and saves all emails sent to it, and provides a HTTP API for automated testing.\n\n## Features\n\n- Single binary with no dependencies\n- Web UI to view emails (WIP)\n- Multiple inboxes to segregate emails by project\n- Support for HTML emails and attachments\n- Support for STARTTLS and HTTPS\n- HTTP API to fetch emails and attachments for automated testing\n- Drop in replacement for [Mailtrap](https://mailtrap.io) and supports the same API\n\n## Quick start\n\n1. Download the latest binary for your platform (currently linux/amd64, linux/aarch64, darwin/amd64 are supported) and start the server:\n\n```bash\ncurl -sSLfo postbox \"https://github.com/supriyo-biswas/postbox/releases/download/$(\n    curl -sSL https://api.github.com/repos/supriyo-biswas/postbox/releases |\n    sed -nr 's/.*\"tag_name\": \"(.*)\".*/\\1/gp' |\n    head -n1\n)/postbox-$(uname -sm | tr 'A-Z ' 'a-z-')\"\n\nchmod +x postbox\n./postbox server\n```\n\nAlternatively, use the Docker image:\n\n```bash\ndocker run -d --name postbox -p 8025:8025 -p 8080:8080 -v $PWD/postbox:/var/lib -it supriyob/postbox\n```\n\n2. Send an email to the server by configuring your application to use the following SMTP settings:\n  - Host: localhost\n  - Port: 8025\n  - SMTP Username/Password: `postbox-default/postbox-default`\n  - SSL/TLS: None\n\n3. Authenticate as `postbox-default/postbox-default` on http://localhost:8080 or use the API server to fetch inboxes, emails and attachments:\n\n```bash\ncurl localhost:8080/api/v1/inboxes/1/messages -H \"Api-Token: \u003ctoken\u003e\"\n```\n\nFor details on the API, see the [API documentation](https://api-docs.mailtrap.io/docs/mailtrap-api-docs/5tjdeg9545058-mailtrap-api). The inbox, email/message and attachment APIs are supported.\n\nPostbox is compatible with both v1 and v2 APIs. For the v2 APIs, simply pass in any random number for the account ID, since it is a local service and does not have the concept of user accounts.\n\n## Creating inboxes\n\nBy default, Postbox creates a single inbox called `postbox-default` with the ID 1 and the SMTP username, password and HTTP API key all set to `postbox-default`. You can create additional inboxes by running the following command:\n\n```bash\n./postbox inbox add my-inbox\n```\n\nOr on docker, use:\n\n```bash\ndocker exec postbox /usr/bin/postbox inbox add my-inbox\n```\n\nThis will print the details of the new inbox like this:\n\n```\nInbox ID: 2\nSMTP username: my-inbox\nSMTP password: \u003c...\u003e\nAPI key: \u003c...\u003e\n```\n\nYou can now use these credentials to send emails to the server and authenticate with the API server.\n\n## Advanced usage\n\nIf you want to configure STARTTLS support for the SMTP server, add HTTPS for the API server, or configure the server to listen on a different port, define a TOML file like this:\n\n```toml\n[server.smtp]\n    listen = \":2525\" # SMTP port, default is 8025\n    key_file = \"my-key.pem\" # TLS key file, for STARTTLS\n    cert_file = \"my-cert.pem\" # TLS cert file, for STARTTLS\n    max_message_bytes = 1000000 # Max size of an email, in bytes (default is 10MB)\n\n[server.http]\n    listen = \":2580\" # HTTP port, default is 8080\n    key_file = \"my-key.pem\" # TLS key file, for HTTPS\n    cert_file = \"my-cert.pem\" # TLS cert file, for HTTPS\n\n[database]\n    path = \"/tmp\" # Custom path to postbox's database\n\n[logging]\n    filename = \"/tmp/postbox.log\" # To configure logging to a file, instead of stdout\n    max_size = 100 # Max size of the log file, in MB\n    max_backups = 10 # Max number of log files to keep\n    max_age = 7 # Max age of the log file, in days\n```\n\nPlace this configuration file in `~/.config/postbox/config.toml` on Linux, `~/Library/Application Support/postbox/config.toml` on macOS, or in `$PWD/postbox/config.toml` if using the Docker image.\n\nAlternatively, pass the configuration file in each invocation:\n\n```bash\n./postbox server --config /path/to/config.toml\n./postbox inbox create my-inbox --config /path/to/config.toml\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsupriyo-biswas%2Fpostbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsupriyo-biswas%2Fpostbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsupriyo-biswas%2Fpostbox/lists"}