Connect Outlook mailboxes of a whole Microsoft tenant
curl --request POST \
--url https://api.salessequencer.com/api/v1/mailboxes/connect-microsoft-tenant \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"emails": "<string>",
"tenant": "<string>"
}
'import requests
url = "https://api.salessequencer.com/api/v1/mailboxes/connect-microsoft-tenant"
payload = {
"emails": "<string>",
"tenant": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({emails: '<string>', tenant: '<string>'})
};
fetch('https://api.salessequencer.com/api/v1/mailboxes/connect-microsoft-tenant', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Mailboxes
Connect Outlook mailboxes of a whole Microsoft tenant
Connects Outlook / Microsoft 365 mailboxes without a per-mailbox sign-in. The tenant's admin must first approve the Up app's application permissions (Mail.Send, Mail.ReadWrite, User.Read.All) once, via https://login.microsoftonline.com/<tenant>/v2.0/adminconsent?client_id=<app id>&scope=https://graph.microsoft.com/.default&redirect_uri=https://app.salessequencer.com/oauth/microsoft/callback. Every address is checked with a real Graph call (reads its inbox folder, sends nothing) before it is saved; failures are returned and never saved. Existing mailboxes with the same address in the workspace are switched to this tenant connection and set active. New mailboxes: kind microsoft, warm-up pool off, campaign ramp starts today. Shared mailboxes work. Super-admin only, because a consented tenant opens every mailbox in it. At most 100 emails per call.
**Minimum role:** `superadmin` (`x-min-role`). **Destructive:** `false` (`x-destructive`).
POST
/
mailboxes
/
connect-microsoft-tenant
Connect Outlook mailboxes of a whole Microsoft tenant
curl --request POST \
--url https://api.salessequencer.com/api/v1/mailboxes/connect-microsoft-tenant \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"emails": "<string>",
"tenant": "<string>"
}
'import requests
url = "https://api.salessequencer.com/api/v1/mailboxes/connect-microsoft-tenant"
payload = {
"emails": "<string>",
"tenant": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({emails: '<string>', tenant: '<string>'})
};
fetch('https://api.salessequencer.com/api/v1/mailboxes/connect-microsoft-tenant', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Authorizations
Body
application/json
Mailbox addresses, separated by newlines, commas or spaces (max 100).
Tenant id (GUID) or domain, e.g. contoso.onmicrosoft.com.
Sender first name for new mailboxes (kept on existing ones that have one).
Sender last name for new mailboxes (kept on existing ones that have one).
Response
200
JSON {ok, connected, reconnected, failed:[{email, reason}]}. 400 when tenant or emails is missing or more than 100 emails are sent.