@@ -81,19 +81,37 @@ DSN::
8181 $transport = Transport::fromDsn($dsn);
8282
8383Where ``$dsn `` depends on the provider you want to use. For plain SMTP, use
84- ``smtp://user:pass@example.com `` or ``smtp://sendmail `` to use the ``sendmail ``
85- binary. For third-party providers, refers to the following table:
86-
87- ==================== ================================== ================================== ================================
88- Provider SMTP HTTP API
89- ==================== ================================== ================================== ================================
90- Amazon SES smtp://ACCESS_KEY:SECRET_KEY@ses http://ACCESS_KEY:SECRET_KEY@ses api://ACCESS_KEY:SECRET_KEY@ses
91- Google Gmail smtp://USERNAME:PASSWORD@gmail n/a n/a
92- Mailchimp Mandrill smtp://USERNAME:PASSWORD@mandrill http://KEY@mandrill api://KEY@mandrill
93- Mailgun smtp://USERNAME:PASSWORD@mailgun http://KEY:DOMAIN@mailgun api://KEY:DOMAIN@mailgun
94- Postmark smtp://ID:ID@postmark n/a api://KEY@postmark
95- Sendgrid smtp://apikey:KEY@sendgrid n/a api://KEY@sendgrid
96- ==================== ================================== ================================== ================================
84+ ``smtp://user:pass@example.com `` or ``sendmail+smtp://default `` to use the
85+ ``sendmail `` binary. To disable the transport, use ``null://null ``.
86+
87+ For third-party providers, refers to the following table:
88+
89+ ==================== ========================================== =========================================== ========================================
90+ Provider SMTP HTTP API
91+ ==================== ========================================== =========================================== ========================================
92+ Amazon SES ses+smtp://ACCESS_KEY:SECRET_KEY@default ses+https://ACCESS_KEY:SECRET_KEY@default ses+api://ACCESS_KEY:SECRET_KEY@default
93+ Google Gmail gmail+smtp://USERNAME:PASSWORD@default n/a n/a
94+ Mailchimp Mandrill mandrill+smtp://USERNAME:PASSWORD@default mandrill+https://KEY@default mandrill+api://KEY@default
95+ Mailgun mailgun+smtp://USERNAME:PASSWORD@default mailgun+https://KEY:DOMAIN@default mailgun+api://KEY:DOMAIN@default
96+ Postmark postmark+smtp://ID:ID@default n/a postmark+api://KEY@default
97+ Sendgrid sendgrid+smtp://apikey:KEY@default n/a sendgrid+api://KEY@default
98+ ==================== ========================================== =========================================== ========================================
99+
100+ Instead of choosing a specific protocol, you can also let Symfony pick the
101+ "best" one by omitting it from the scheme: for instance,
102+ ``mailgun://KEY:DOMAIN@default `` is equivalent to
103+ ``mailgun+https://KEY:DOMAIN@default ``.
104+
105+ If you want to override the default host for a provider (to debug an issue with
106+ a requestb.in like service), change ``default `` by your host:
107+
108+
109+ .. code-block :: bash
110+
111+ mailgun+https://KEY:DOMAIN@example.com
112+ mailgun+https://KEY:DOMAIN@example.com:99
113+
114+ Note that the protocol is *always * HTTPs and cannot be changed.
97115
98116Load Balancing
99117--------------
@@ -108,7 +126,7 @@ Failover Load Balancing
108126A failover transport is configured with two or more transports and the
109127``failover `` keyword::
110128
111- $dsn = 'failover(api://id@postmark smtp://key@sendgrid )';
129+ $dsn = 'failover(postmark+ api://ID@default sendgrid+ smtp://KEY@default )';
112130
113131The mailer will start using the first transport. If the sending fails, the
114132mailer won't retry it with the other transports, but it will switch to the next
@@ -120,7 +138,7 @@ Round-Robin Load Balancing
120138A round-robin transport is configured with two or more transports and the
121139``roundrobin `` keyword::
122140
123- $dsn = 'roundrobin(api://id@postmark smtp://key@sendgrid )'
141+ $dsn = 'roundrobin(postmark+ api://ID@default sendgrid+ smtp://KEY@default )'
124142
125143The mailer will start using the first transport and if it fails, it will retry
126144the same delivery with the next transports until one of them succeeds (or until
0 commit comments