Troubleshooting & Prevention
Microsoft 365 Defender warnings and sending suspension, LinkedIn pacing and account restrictions, why runs stall without an error, and how to prevent common issues before they happen.
Last updated 8 July 2026
Microsoft 365: warnings and sending suspension
Why Microsoft flags your account
When you first connect Leadmeister to a Microsoft 365 mailbox and begin sending outreach emails, your mailbox has no established reputation for bulk outbound volume. Microsoft's Exchange Online Protection (EOP) and Defender systems treat sudden spikes in outbound message volume as a signal of a compromised or spamming account. This can trigger warnings, rate limiting, or full outbound sending suspension — even when the emails are legitimate.
This is not a Leadmeister problem specifically. It affects any tool that sends email at volume through a personal or business M365 mailbox that has historically been low-volume.
Gradual volume build-up — the most important prevention step
The single most effective way to avoid Defender blocks is to ramp up sending volume slowly. Starting at high limits the moment you connect your mailbox is the most common cause of suspension.
Recommended ramp schedule:
- Week 1: 10–20 emails per day
- Week 2: 30–50 emails per day
- Week 3: 75–100 emails per day
- Week 4 onwards: increase by 25–30% per week until you reach your target volume
You control the daily email limit in Leadmeister under Settings → Email. Start low and increase gradually. Microsoft's sending reputation builds over 4–6 weeks of consistent, engaged sending.
Recommended Microsoft 365 Defender policy settings
Your IT administrator can configure outbound spam policies to give you more headroom and ensure you receive a warning before any suspension occurs, rather than being blocked silently.
- Sign in to Microsoft 365 Defender at https://security.microsoft.com
- Go to Email & Collaboration → Policies & Rules → Threat Policies → Anti-spam
- Click "Anti-spam outbound policy (Default)" or create a custom outbound policy for your sending mailbox
- Under "Automatic forwarding", set to "Automatic — system controlled"
- Under "Notifications", enable "Notify these users and groups if a sender is blocked for sending outbound spam" and enter your admin email address. This ensures you receive an alert before suspension rather than discovering it after a run stalls.
- Set "External message limit" to match your intended daily send volume (e.g. 500). The default is often 500/day but confirm it matches your plan's limits.
- Save the policy
Full guidance from Microsoft: Configure outbound spam filter policies
How to unblock a restricted sender
If your mailbox has been suspended from sending, Microsoft places it in the "Restricted entities" list. You must manually remove it before sending resumes — Leadmeister cannot do this automatically.
- Go to Microsoft 365 Defender → Email & Collaboration → Review → Restricted entities
- Find the blocked mailbox address in the list
- Select it and click "Unblock"
- Confirm the action. Sending should resume within 1 hour.
- Reduce your daily send limit in Leadmeister before restarting to avoid immediate re-suspension
Direct link to the Restricted entities page: security.microsoft.com/restrictedentities
Microsoft documentation on removing users from the blocked senders list: Remove blocked users from the Restricted entities page
Additional prevention measures
- Use a dedicated sending mailbox (e.g. outreach@yourcompany.com) rather than your primary inbox. This isolates any reputation impact from your main business email.
- Ensure your domain has SPF, DKIM, and DMARC records configured correctly. Emails sent without these records are far more likely to be flagged. Check with your IT team or use mail-tester.com to verify.
- Monitor your Microsoft 365 admin centre (admin.microsoft.com) regularly for any alerts under Health → Message centre.
LinkedIn: why connection requests take so long
LinkedIn connection requests from a Leadmeister run are not sent all at once. They are deliberately paced with a random 7–12 minute gap between each request, and only during business hours (Monday–Friday, 9am–5pm in your local timezone).
This pacing is intentional. LinkedIn's systems actively monitor accounts for automated or bulk behaviour. An account that sends 50 connection requests in an hour looks very different — and far more suspicious — than one that sends the same 50 requests spread across several working days at human-like intervals. Pacing is the primary defence against LinkedIn restricting or permanently suspending your account's ability to send invitations.
What this means in practice:
- A run targeting 20 leads with LinkedIn connections will take roughly 2.5–4 hours of sending time, spread across working days
- If you start a run late in the afternoon, some connections may not go out until the next business day
- The run status will show as "In progress" while connections are queued — this is normal
- You can see the estimated completion time and next scheduled send in the run detail view
Why a run might fail or stall without an error message
Leadmeister processes each lead as an independent background job. If a job encounters an ambiguous response from LinkedIn or Microsoft — not a clear error, but not a clear success either — the system cannot always distinguish between "the action worked" and "the action was silently rejected".
LinkedIn in particular does not always return a clear failure code. A connection request can be:
- Accepted immediately and queued for delivery
- Silently dropped by LinkedIn's anti-spam filters without any error code returned
- Quietly rate-limited so the request never registers
In these cases Leadmeister records the attempt as sent (because the API call succeeded technically) but the connection never appears in the recipient's inbox. There is currently no way for Leadmeister to detect this after the fact. This is a limitation of LinkedIn's API, not the platform.
If you notice a run completing but fewer connections appearing in LinkedIn than expected, it is likely some requests were silently dropped. Reducing your weekly connection limit and spreading requests across more days reduces the likelihood of this happening.
LinkedIn account restrictions and blocking
LinkedIn actively enforces limits on automated outreach. If their systems detect behaviour that looks automated or exceeds their internal thresholds — which LinkedIn does not publish — they can restrict your account in several ways:
- Temporary invitation sending limit — you see "You've reached the weekly invitation limit." This typically lifts after 7 days.
- Silent CAPTCHA — LinkedIn presents a CAPTCHA behind the scenes that the API cannot solve. The connection request appears to succeed but is never delivered.
- Account review — LinkedIn may ask you to verify your identity or phone number before restoring full sending.
- Permanent invitation restriction — in severe cases, the ability to send connection requests is removed permanently from the account.
Signs that your account may be restricted:
- Connection request counts on your LinkedIn profile stop increasing even though Leadmeister shows runs completing
- Pending invitations sent counter in LinkedIn stays at zero
- You receive an email from LinkedIn about "unusual activity"
If you suspect a restriction, check your LinkedIn account directly before starting another run. Continuing to send while restricted consumes your weekly quota and can worsen the restriction.
How to reduce restriction risk
- Keep connection requests below 100 per week. LinkedIn doesn't publish exact limits; 50–80 per week is the widely-cited safe estimate from the automation community, not an official figure.
- Only connect with people who are likely to accept. Low acceptance rates signal spam-like behaviour to LinkedIn.
- Ensure your LinkedIn profile looks complete and genuine — a sparse profile attracts more scrutiny for connection requests.
- Do not run Leadmeister LinkedIn outreach at the same time as other LinkedIn automation tools on the same account.
Why you cannot send a follow-up message with every connection request
LinkedIn's API supports sending a short personalised note (up to approximately 300 characters) with a connection request. Leadmeister uses this for AI-personalised connection notes.
However, longer follow-up messages — the kind you might write manually after connecting — can only be sent once the connection is accepted. LinkedIn does not provide an API endpoint to send a full InMail-style message at the point of sending a connection request.
This is a LinkedIn platform restriction, not a Leadmeister limitation. It applies to all third-party tools that use the LinkedIn API.
How Leadmeister handles this:
- The AI-personalised connection note (short, ~2–3 sentences) is sent with the request
- Once a connection is accepted and LinkedIn notifies Leadmeister, a follow-up message can be queued automatically (depending on your run configuration)
- If you want to send a longer initial message immediately, you would need to do this manually through LinkedIn's native interface
Common error messages
Authentication / sessions
"Clerk: Handshake token verification failed"
The backend could not verify your session JWT. Usually caused by a Clerk instance mismatch between frontend and backend (dev vs. production keys, or a stale browser cookie).
Fix:
- Clear site data (F12 → Application → Clear storage → Clear site data)
- Sign in again
- If it persists, contact support — the deployment's Clerk keys likely need realigning
"Token expired — please reconnect"
The OAuth token for a connected provider has expired. Open Connections, click Disconnect then Connect again on the affected provider.
"Microsoft 365 token expired mid-run"
Your M365 session expired partway through a run. Reconnect Microsoft 365 on the Connections page. Leads already processed during the run are not retried automatically.
"Email usage limit reached (X/Y)"
You've hit your daily email cap for your plan. Wait until the next day (daily reset), or upgrade your plan.
"LinkedIn usage limit reached"
You've hit your weekly LinkedIn connection cap. This resets on Monday. You can adjust your weekly limit in Settings → LinkedIn.
"Run was cancelled before pickup"
You cancelled a queued run before the worker started processing it. Safe — nothing was sent.
"Too recent" (lead skipped)
The lead received outreach in the last 14 days. Skipped to prevent repeat contact. If this is wrong, reset Last_Outreach_Date on the lead record in Zoho.
"No Zoho views available"
The backend could not list your Zoho views. Check that the Zoho connection is green on the Connections page and that you have at least one custom view on the Leads module in Zoho. If the problem persists, disconnect and reconnect Zoho.
Contacting support
If an issue cannot be resolved through the steps above, reach the Leadmeister team via:
- Email: support@leadmeister.ai — for general questions, billing, or anything that needs a human
- Contact form: available via the Contact button in the left sidebar (signed-in users) or the Contact link in the site footer
When contacting support, include: what page you were on, what you clicked, the exact error message or behaviour, and (if relevant) your run ID from the Dashboard.