<source>
The default is false. The line allows the source to use merge extensions — three additional protocol commands with which a message is transferred once, while the recipients and substituted values go separately.
The point is volume: one transfer instead of a thousand identical ones, and the difference in load on the channel and the node is noticeable.
The line can be enabled indirectly. The manual says: always-allow-api-submission set to yes is currently equivalent to this permission. That is, by enabling the permission for API submission, you have enabled merging too.
The other half: merging has its own handling of control headers. The job label there is set with a variable, not a header — and the same goes for the date.
We do not need merging anyway: warm-up submits messages one at a time over regular SMTP, and the Hub does not use API submission.
What to set. The permission is worth granting when needed, not in advance:
| Value | When |
|---|---|
| false (default) | submission goes one message at a time — our case |
| true | the submitting platform can merge and the volume is worth it |
It is not only this line that needs checking: the API submission permission enables merging by itself.
# the permission is granted to the source whose platform can merge <source 10.0.0.0/24> allow-mailmerge true</source>
what people get wrong and how it ends2 mistakes▶
§ 3.3.7.72
§ 3.3.7.1
2 relations
What the submitting system assembles before sendingMerging also has to be allowed in the submission block — otherwise the submitting system will not apply it. § 7.1Personalization inside the enginePermission on the node: without it the submitting system will not apply merging. § 7.1What the submission bindings needThe directive that enables this mechanism. § 7.1Mail merge via SMTP extensionsThe directive that enables this mechanism. § 11.19.3
grep -n 'allow-mailmerge\|always-allow-api-submission' /etc/pmta/config /etc/pmta/virtualhost.txt printf 'EHLO test\r\nQUIT\r\n' | nc <node-address> 2525 | grep -i xmrg
3 articles
◇How a message gets into the engineSix described submission methods: extended SMTP, four language bindings and a directory the node watches on disk.◇Who is allowed to submit mail and for whom to accept itOut of the box, the node accepts submission only from the machine itself; two different questions — “who can send through us” and “for whose addresses we accept mail” — are answered by different directives.◇Headers the sender uses to control deliverySix control headers let the submitting side choose a stream, tag a message with a job, set signing options and the key, the envelope identifier and the schedule; each is allowed separately and per source.