{"id":21931739,"url":"https://github.com/lekoala/silverstripe-mandrill","last_synced_at":"2025-09-23T23:14:39.912Z","repository":{"id":14685473,"uuid":"17404920","full_name":"lekoala/silverstripe-mandrill","owner":"lekoala","description":"Mandrill integration for Silverstripe","archived":false,"fork":false,"pushed_at":"2024-11-12T23:20:19.000Z","size":706,"stargazers_count":18,"open_issues_count":0,"forks_count":18,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-30T01:06:30.236Z","etag":null,"topics":["mandrill","php","silverstripe","silverstripe-4","silverstripe-5","silverstripe-module"],"latest_commit_sha":null,"homepage":"https://github.com/lekoala/silverstripe-mandrill","language":"PHP","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/lekoala.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","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},"funding":{"github":"lekoala"}},"created_at":"2014-03-04T14:29:15.000Z","updated_at":"2024-11-12T23:20:23.000Z","dependencies_parsed_at":"2024-06-19T01:49:35.294Z","dependency_job_id":"ab18b0f7-13eb-47c2-bfb7-cf18b1bc3f87","html_url":"https://github.com/lekoala/silverstripe-mandrill","commit_stats":{"total_commits":223,"total_committers":16,"mean_commits":13.9375,"dds":0.5112107623318385,"last_synced_commit":"712aac343f024470c50f4bfab488daab6e3b8de7"},"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lekoala%2Fsilverstripe-mandrill","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lekoala%2Fsilverstripe-mandrill/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lekoala%2Fsilverstripe-mandrill/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lekoala%2Fsilverstripe-mandrill/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lekoala","download_url":"https://codeload.github.com/lekoala/silverstripe-mandrill/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247423514,"owners_count":20936626,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["mandrill","php","silverstripe","silverstripe-4","silverstripe-5","silverstripe-module"],"created_at":"2024-11-28T23:14:53.097Z","updated_at":"2025-09-23T23:14:34.863Z","avatar_url":"https://github.com/lekoala.png","language":"PHP","funding_links":["https://github.com/sponsors/lekoala"],"categories":[],"sub_categories":[],"readme":"# SilverStripe Mandrill module\n\n![Build Status](https://github.com/lekoala/silverstripe-mandrill/actions/workflows/ci.yml/badge.svg)\n[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/lekoala/silverstripe-mandrill/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/lekoala/silverstripe-mandrill/?branch=master)\n[![Code Coverage](https://scrutinizer-ci.com/g/lekoala/silverstripe-mandrill/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/lekoala/silverstripe-mandrill/?branch=master)\n[![Build Status](https://scrutinizer-ci.com/g/lekoala/silverstripe-mandrill/badges/build.png?b=master)](https://scrutinizer-ci.com/g/lekoala/silverstripe-mandrill/build-status/master)\n[![codecov.io](https://codecov.io/github/lekoala/silverstripe-mandrill/coverage.svg?branch=master)](https://codecov.io/github/lekoala/silverstripe-mandrill?branch=master)\n\n[![Latest Stable Version](https://poser.pugx.org/lekoala/silverstripe-mandrill/version)](https://packagist.org/packages/lekoala/silverstripe-mandrill)\n[![Latest Unstable Version](https://poser.pugx.org/lekoala/silverstripe-mandrill/v/unstable)](//packagist.org/packages/lekoala/silverstripe-mandrill)\n[![Total Downloads](https://poser.pugx.org/lekoala/silverstripe-mandrill/downloads)](https://packagist.org/packages/lekoala/silverstripe-mandrill)\n[![License](https://poser.pugx.org/lekoala/silverstripe-mandrill/license)](https://packagist.org/packages/lekoala/silverstripe-mandrill)\n[![Monthly Downloads](https://poser.pugx.org/lekoala/silverstripe-mandrill/d/monthly)](https://packagist.org/packages/lekoala/silverstripe-mandrill)\n[![Daily Downloads](https://poser.pugx.org/lekoala/silverstripe-mandrill/d/daily)](https://packagist.org/packages/lekoala/silverstripe-mandrill)\n\n![codecov.io](https://codecov.io/github/lekoala/silverstripe-mandrill/branch.svg?branch=master)\n\nUse Mandrill in SilverStripe\n\nDefine in your .env file the following constant\n\n    MANDRILL_API_KEY='YOUR_API_KEY_HERE'\n\nor by defining the api key in your config.yml\n\n```yaml\nLeKoala\\Mandrill\\MandrillHelper:\n    mandrill_api_key: \"key3goes9here\"\n```\n\nThis module uses the official php sdk version 1.0.54 with a few tweaks.\n\nYou can also autoconfigure the module with the following constants in your .env file\n\n    # Will log emails in the temp folders\n    MANDRILL_ENABLE_LOGGING=true\n    # Will disable sending (useful in development)\n    MANDRILL_SENDING_DISABLED=true\n    # Set app domain explicitly\n    MANDRILL_DOMAIN=\"mysite.co.nz\"\n    # Also recommended to specify an explicit from\n    SS_SEND_ALL_EMAILS_FROM=\"noreply@mysite.co.nz\"\n\nBy defining the Api Key, the module will register a new mailer that will be used to send all emails.\n\n# Integration\n\nThis module create a new admin section that allows you to see results from\nyour api calls right from the SilverStripe CMS without having to log into\nmandrillapp.com\n\n# Webhooks\n\nFrom the Mandrill Admin, you can setup a webhook for your website. This webhook\nwill be called and MandrillController will take care of handling all events\nfor you.\n\nBy default, MandrillController will do nothing. Feel free to add your own\nextensions to MandrillController to define your own rules, like \"Send an\nemail to the admin when we receive a spam complaint\".\n\nMandrillController provides 4 extensions points:\n\n-   updateHandleAnyEvent\n-   updateHandleSyncEvent\n-   updateHandleInboundEvent\n-   updateHandleMessageEvent\n\nIt's recommended that you ensure requests are coming from Mailchimp Transactional rather than an imitator.\nWebhook authentication is disabled by default but you can enable webhook authentication through the config layer like so:\n\n```\nLeKoala\\Mandrill\\MandrillController:\n  webhook_auth_enabled: true\n```\n\nYou'll need your webhook authentication key which you can view and reset from the (Webhooks)[https://mandrillapp.com/settings/webhooks] page in your account.\nAdd your key using the config layer or `.env` file.\n\nvia config\n```\nLeKoala\\Mandrill\\MandrillController:\n  webhook_key: YOUR_KEY\n```\n\nvia .env file\n```\nMANDRILL_WEBHOOK_KEY=YOUR_KEY\n```\n\n# Migration from Swift Mailer\n\nSilverStripe 5 replaced swift mailer by symfony/mailer\n\nMake sure to read the docs\nhttps://docs.silverstripe.org/en/5/developer_guides/email/\nhttps://symfony.com/doc/current/mailer.html\n\nFor SS4 version, check branch 3 and v4 releases\n\n# Compatibility\n\nTested with SilverStripe 5+\n\n# Maintainer\n\nLeKoala - thomas@lekoala.be\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flekoala%2Fsilverstripe-mandrill","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flekoala%2Fsilverstripe-mandrill","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flekoala%2Fsilverstripe-mandrill/lists"}