GreenArrow Email Software Documentation

Legacy Types of Events

Legacy Configuration

This page describes bounce processor integration data in configurations that were setup prior to the creation of the Event Notification System in November 2011.


Event Types

GreenArrow Engine’s bounce processor has four event types. Event types are designated by the value of event_type. Each event type is described below, including a list of what data is created by default, an an example event.

hook_bounce

This event requires action, and is run when an email address has met the configured removal threshold for either hard or soft bounces. A hook_bounce event occurs so you can remove the address from your database.

Field Example Value
event_type hook_bounce
listid t99
email [email protected]
sendid t9920110705
bounce_type h
bounce_rule 10
bounce_message 1.1.1.1 failed after I sent the message. Remote host said: 554 delivery error: dd This user doesn't have a yahoo.com account ([email protected]) \- mta1218.mail.mud.yahoo.com
bounce_time 1309867200

hook_scomp

This event requires action, and is run when a spam complaint is received. You should unsubscribe the complaining address from your database.

Field Example Value
event_type hook_scomp
listid t99
email [email protected]
sendid t9920110705
bounce_time 1309867200

hook_stat

This event is created exclusively for stats reporting and requires no action. This event is triggered for every bounce message and spam complaint received. It will contain some duplicate data (from the hook_bounce and hook_scomp events), but it will also incude include additional data that you won’t receive in the other events. For instance, addresses which have soft bounced or ‘other’ bounced but have not yet met the configured removal threshold will be reported here.

This event type exists for applications that want to keep statistical information on how many bounces are received for each campaign. If you do not plan to use this event type, it can be turned off to reduce the overhead that bounce processing data creates.

Field Example Value
event_type hook_stat
listid t99
email [email protected]
sendid t9920110705
bounce_type h
bounce_rule 10
bounce_message 1.1.1.1 failed after I sent the message. Remote host said: 554 delivery error: dd This user doesn't have a yahoo.com account ([email protected]) \- mta1218.mail.mud.yahoo.com
bounce_time 1309867200

hook_unsub

Run for every unsubscribe event. This is only applicable for messages injected using SimpleMH.

Field Example Value
event_type hook_unsub
listid t99
email [email protected]
sendid t9920110705
bounce_time 1309867200

Event Data

The following data fields are available:

event_type - Designates the event that occurred. Valid values are:

  • hook_bounce
  • hook_scomp
  • hook_stat
  • hook_unsub

listid - The list identifier for the message that bounced in string form. Any uppercase letters in the original will be converted to lowercase.

sendid - The send identifier for the message that bounced in string form. Any uppercase letters in the original will be converted to lowercase.

email - The email address that is being marked as invalid. Any uppercase letters in the original will be converted to lowercase. If you are using a database that is case sensitive by default, for example PostgreSQL, then be sure to use a case-insensitive comparison for this field.

bounce_type - The type of bounce that occurred. Valid values are:

  • h = hard bounce
  • s = soft bounce
  • o = other bounce
  • c = spam complaint

bounce_rule - The numeric bounce code.

Here is a list of the bounce codes:

Code Description Recommended bounce type
0 Non bounce Other
10 Hard bounce Hard
20 Soft bounce - general Soft
21 Soft bounce - DNS failure Soft
22 Soft bounce - mailbox full Soft
23 Other bounce - message size too large Other
29 Soft bounce - unable to connect Soft
30 Bounce with no email address Other
40 General bounce Other
50 Mail block - general Other
51 Mail block - known spammer Other
52 Mail block - spam detected Other
53 Mail block - attachment detected Other
54 Mail block - relay denied Other
55 Mail block - SPF/DKIM/DMARC Other
59 Mail block - unable to connect Other
60 Auto reply Other
70 Transient bounce Other
80 Subscribe request Other
90 Unubscribe request Hard
100 Challenge response Other
110 Soft bounce - over GreenArrow throttle limit Other
120 Queue dumped Other
121 Delivery paused, then message expired Other
200 Spam complaint NA

bounce_message - The bounce message text.

bounce_time - The time of the bounce in UNIX seconds since the epoch.

is_local - 1 if the bounce was a local bounce, 0 if not.


Copyright © 2012–2024 GreenArrow Email