Enhanced Status Code 5.0.350: Generic Remote Server Error
Enhanced Status Code 5.0.350 means “Generic Remote Server Error.” Microsoft's catch-all for an error the recipient organisation returned that Exchange Online could not classify. The useful information is always in the text that follows, never in the code.
550 5.0.350 Remote server returned an error: Requested action not taken: policy violation detected (AS345)
What does 5.0.350 mean?
Microsoft returns 5.0.350 as a generic wrapper for errors from a recipient organisation that Exchange Online cannot map to a more specific code. It is not IANA-registered. Seeing it means the receiving system said something Microsoft is relaying verbatim rather than interpreting.
Because of that, the code carries essentially no diagnostic value on its own and the text is everything. Two documented cases illustrate the range. One is an x-dg-ref header being too long, which relates to Rich Text formatted messages and is fixed by sending in HTML or plain text instead. Another is a policy violation detected with an AS345 reference, which relates to nested attachments, meaning an attached message that itself contains attachments.
The practical approach is to read the remainder of the bounce as though the code were absent. Whatever the recipient's system said is the real error, and it may well be a perfectly ordinary code from a third system that Exchange wrapped on the way through. Treating 5.0.350 as a distinct condition to diagnose leads nowhere.
How 5.0.350 plays out
5.0.350 rejectionWhere 5.0.350 sits: soft vs hard bounce
| Soft bounce (4xx) | Hard bounce (5xx) | |
|---|---|---|
| Nature | Temporary | Permanent |
| SMTP class | 4xx | 5xx |
| What to do | Let it retry | Suppress the address |
| Recoverable? | Often | No |
| 5.0.350 is | ✓ this code |
What each provider means by 5.0.350
A registered code does not oblige a provider to use it that way, and the large ones diverge. Match the wording in your own bounce, not the definition above.
Common causes of 5.0.350
- The recipient organisation returned an error Exchange Online could not classify
- A Rich Text formatted message produced an overlong x-dg-ref header
- Nested attachments triggered a policy violation at the receiving end
- A third-party gateway in front of the recipient returned a non-standard error
- A recipient-side transport rule rejected the message with custom text
- An intermediate relay produced an error that Exchange wrapped rather than translated
How to fix 5.0.350
- Read the text after the code, which is the only real diagnosis available
- For x-dg-ref errors, send as HTML or plain text rather than Rich Text format
- For nested attachment policy violations, avoid attaching messages that carry their own attachments
- Ask the recipient administrator what their gateway logged, since they can see the original error
- Do not retry, since the leading 5 makes it permanent
- Treat the code as a wrapper and diagnose the wrapped message instead