SleekView for Office 365 SMTP: send logs and OAuth config as tables
Office 365 SMTP plugins authenticate against Microsoft Graph using OAuth credentials in wp_options. SleekView turns the resulting send logs into a sortable workspace so deliverability incidents and auth-token issues surface as saved views.
♾️ Lifetime License available
Microsoft Graph sends with an inline workspace
Office 365 SMTP plugins send through the Microsoft Graph sendMail endpoint using OAuth client credentials. The tenant ID, client ID, secret, and refresh token sit in wp_options under keys like o365_smtp_options. When the local log is enabled, per-send rows land in wp_o365_smtp_log with recipient, subject, status, Graph API response code, and source plugin.
The default admin separates credentials, the test-send tool, and the log into tabs. There is no saved-view layer, no per-source filter, and no bulk retry. Auth-token expiry, tenant-policy blocks, and per-user throttling all surface as opaque error rows rather than as named cohorts. Correlating an outage with a token refresh or a tenant policy change means reading the log line-by-line and comparing timestamps in the Azure portal.
SleekView reads the local log directly and exposes recipient, status, Graph API code, source plugin, and token age as first-class columns. Bulk retries route through the plugin's send handler so OAuth refresh and Graph throttle handling fire correctly.
Workflow
Office 365 send log as a workspace
Enable the local log
wp_o365_smtp_log with recipient, subject, status, and Graph code.
Map the log table
wp_o365_smtp_log. Graph code, tenant ID, and source plugin become first-class columns alongside recipient and subject.
Watch token and tenant context
Retry in bulk
wp_mail filters fire.
Sample columns
A typical Office 365 SMTP send log
wp_options (o365_smtp_options) + wp_o365_smtp_log
| Recipient | Subject | Status | Graph code | Source | Sent |
|---|---|---|---|---|---|
| alex@studio.co | Invoice #2042 | Accepted | 202 | WooCommerce | Apr 24 |
| ria@design.io | Booking confirmed | Accepted | 202 | Amelia | Apr 24 |
| tom@hello.dev | Password reset | Throttled | 429 | core | Apr 23 |
| mia@brew.coop | Newsletter | Tenant block | 403 | MailPoet | Apr 22 |
Comparison
Default Office 365 SMTP admin vs SleekView
Default Office 365 SMTP admin
- Credentials, test, and log split across tabs
- No saved-view layer on the local log
- Graph response codes are not exposed as a filter
-
Per-source attribution requires SQL on
wp_o365_smtp_log - Token-age data lives in the credentials tab, far from the log
SleekView
-
Log workspace read from
wp_o365_smtp_log - Filter by Graph code (202, 403, 429) and source
- Token age and tenant ID surfaced alongside each send
- Bulk retry through the plugin's refresh + send handler
- Saved cohorts for tenant-block and throttled rows
Features
What SleekView gives you for Office 365 SMTP
Token + tenant context
Each row carries the OAuth token age and tenant ID alongside the Graph response. Correlate a 401 spike with a token refresh event, or a 403 spike with a tenant-policy change, in a single saved view.
Throttle cohorts
Filter to Graph code 429 to find which source plugins are pushing past the tenant's per-user send limit. The cohort suggests where to add a queue in front of wp_mail.
Bulk retry
Select throttled or auth-error rows and trigger the plugin's send handler. OAuth refresh and Graph throttle backoff happen automatically; wp_mail filters fire on the new attempt.
Audience
Who uses SleekView for Office 365 SMTP
Support
Look up specific recipients by email or order ID. The Graph code column tells whether the send was accepted, throttled, or blocked by tenant policy.
Site admins
Watch for 403 tenant-block clusters as an early sign a Conditional Access or DLP policy changed. The saved view flags policy regressions before deliverability hits zero.
Developers
Audit which plugins hit the Graph per-user rate limit. Group by source plugin and Graph code 429 to surface the integration that needs throttling.
The bigger picture
Why Office 365 sends need a tenant-aware workspace
Microsoft Graph is a deliverable transport but a policy-rich one. Conditional Access, DLP, per-user throttling, and refresh-token expiry each present as distinct API responses, and each can take a WordPress site's outbound mail to zero without a single SMTP error appearing. The Office 365 SMTP plugin's log captures the Graph codes faithfully but its own viewer is a flat list.
Operators end up reading line-by-line when a single saved view filtered to 403 would flag a tenant policy change, or a 429 cohort would surface the source plugin pushing past the per-user limit. SleekView reads wp_o365_smtp_log directly and exposes Graph code, tenant ID, source plugin, and token age as filterable columns. Site admins watch for policy regressions before users complain.
Support gets a same-window delivery answer for each recipient. Developers can find and throttle the integration that breaches the rate limit. The plugin keeps the OAuth handshake and the policy-aware send handler; SleekView gives the resulting log the workspace it has lacked.
Questions
Common questions about SleekView for Office 365 SMTP
Yes for the per-send workspace. With logging off, SleekView still surfaces OAuth credential rows from wp_options, but per-send rows require the plugin's log option to be on.
Client ID, secret, and tenant ID rows are editable through a saved configuration view. Rotating the refresh token still requires the standard OAuth flow in the plugin's credentials tab; SleekView surfaces the rows, not the handshake.
 Yes. Tenant policy blocks return as 403 responses with diagnostic text in the API payload. SleekView surfaces the code as a filter and the payload as a column so admins can spot a policy regression.
 No. The plugin rotates the log on its retention setting. SleekView respects the configured limit; it does not extend retention or duplicate rows.
 Yes. Saved views export to CSV with the filtered cohort. Useful for documenting a deliverability incident or sharing a 403 spike with the tenant administrator.
 
The limit surfaces as Graph code 429 in the log. Filter to that code to find the plugin pushing past the per-user send quota, and add a throttle in front of wp_mail for that integration.
Each log row carries the tenant ID and the from-address, so multi-tenant sites can group by tenant or by shared mailbox. Saved views per tenant become the per-tenant deliverability surface.
 Yes. The source field on each log row, when set by the originating plugin, becomes a first-class filter. Per-source cohorts (WooCommerce, Amelia, MailPoet, core) become saved views.
 Pricing
More than 1000+
happy customers
Explore our flexible licensing options tailored to your needs. Upgrade your license anytime to access more features, or opt for a lifetime license for ongoing value, including lifetime updates and lifetime support. Our hassle-free upgrade process ensures that our platform can grow with you, starting from whichever plan you choose.
Lifetime ♾️
Most popular
EUR
once
- Unlimited websites
- Lifetime updates
- Lifetime support
...or get the Bundle Deal
and save €250 🎁
The Bundle (unlimited sites)
Pay once, own it forever
Elevate your WordPress site with our exclusive plugin bundle that includes all of our premium plugins in one package. Enjoy lifetime updates and lifetime support. Save significantly compared to buying plugins individually.
What’s included
-
SleekAI
-
SleekByte
-
SleekMotion
-
SleekPixel
-
SleekRank
-
SleekView
€749
Continue to checkoutBrowse more
- Woocommerce Paytm Gateway
- Woocommerce Xero
- Yith Woocommerce Stripe
- Woocommerce Purchase Orders
- Cartflows
- Woocommerce Aftership
- Woocommerce Nowpayments
- Restropress
- Woocommerce Quotes Orders
- Woocommerce Advanced Flat Rate Shipping
- Woocommerce Low Stock Alerts
- Woocommerce Dhl Express
- Woocommerce Product Csv Import
- Woocommerce Sequential Order Numbers Pro
- Edd Frontend Submissions