**TL;DR:** Use mail_settings.sandbox_mode.enable to validate a mail send request end to end in CI without delivering anything. Covers the boolean trap, the 200-vs-202 signal, and what it does not validate. The string "true" gives you: The sandbox mode enable param should be a boolean value.

## The fix

1. enable must be a real boolean true/false. The string "true" gives you: The sandbox mode enable param should be a boolean value.

2. A valid sandbox request returns 200 OK, not the 202 you get for a real send. Assert on 200 in tests.

3. Nothing is delivered, no Event Webhook events fire, no email activity is logged, and no credits are consumed. It validates form, type, and shape of the request.

4. If you include a template_id, SendGrid assumes the template carries the subject and body and does not validate them. A sandbox 200 with a bad template_id can still fail in production.

5. An invalid request returns the same errors array as a real send, with codes and doc links. That is the whole point: run your full payload through sandbox mode in CI.

## When to use this

- This covers exactly what the title says: SendGrid sandbox mode.
- You are setting this up for the first time, or auditing an existing setup.
- You want the key gotchas in one place before you start.

## When not to use this

- You are doing a different workflow with SendGrid; these steps are specific to the title above.
- You need the full reference docs; this is the short path, not the manual.

## Compatibility

- Not pinned to a specific version; follows current SendGrid behavior.