GreenArrow Email Software Documentation

Message Submission

What methods are supported for submitting messages to GreenArrow?

GreenArrow supports two methods of message injection:

In addition, GreenArrow can and does function as an inbound mail server, listening for SMTP connections on port 25.

How does the SMTP Message Injection API handle authentication?

Authentication for injecting email can be done by source IP address or SMTP-AUTH.

Does the SMTP Message Injection API function support customization?

When a message is passed to GreenArrow through the SMTP Message Injection API, it first undergoes processing before Engine attempts to deliver the message to its destination. This processing can be extensively customized with the addition of custom RFC 5322 headers. Most of these header names begin with X-GreenArrow- and are removed after processing and before delivery is attempted. (These headers can also be provided to the HTTP API in the JSON payload as message headers.)

In addition to the headers mentioned in the previous paragraph, these headers and configuration directives can also be used to customize the processing and delivery of email:

These same headers may also be provided to the HTTP Injection API.

What SMTP extensions do you support?

The following SMTP extensions are supported:

  • STARTTLS
  • SMTP AUTH
  • PIPELINING
  • 8BITMIME

How do I get the best performance using SMTP?

For best performance we recommend:

  • Keeping the same SMTP connection open for thousands of emails. This allows TCP slow start to grow the congestion window. If using STARTTLS or SMTPS, this also dilutes the work of establishing a TLS connection over many emails.

  • Using PIPELINING.

  • Using multiple parallel injectors.

Does the HTTP Message Injection API support batching and compression?

The HTTP Message Injection API supports batching of multiple messages into a single request, and compression of the HTTP payload.

How does the HTTP Message Injection API handle authentication?

Authentication is done by username/password pair.

The API may be accessed over HTTP or HTTPS.

How do I get the best performance with the HTTP Message Injection API?

For best performance, we recommend:

  • Using HTTP Keepalive and having your injector make many requests over the same TCP connection. This allows TCP slow start to grow the congestion window. If using HTTPS, this also dilutes the work of establishing a TLS connection over many emails.

  • Using multiple parallel injectors.

  • Consider using message batching, with a batch size of 5 or 10.

  • Consider using compression, if you are limited by the network.


Copyright © 2012–2026 GreenArrow Email