Skip to main content
Version: 1.21.0

Update the Blocklist

The EasyLife 365 Mail API facilitates the direct updating of the mail blocklists. The blocklist feature prevents end-users from creating resources that match or contain blocklist terms. Blocklist terms are either specific email prefixes or simple wildcard terms using an asterisk (*) to denote multiple characters. For instance, an organization might want to avoid using email addresses that use common prefixes such as admin@, marketing@, sales@, and other common email prefixes to help reduce unsolicited emails and other exploits.

Permissions​

Permission TypePermissions (Scope)
Delegated (work or school account)https://api.easylife365.cloud/admin/Mail.Blocklist.Write
ApplicationNot supported.

HTTP Request​

GET https://api.easylife365.cloud/admin/v1/blocklist
Content-Type: application/json

HTTP Request Headers​

HeaderValue
AuthorizationBearer token. (Required)
Content-Typeapplication/json

In this example, we demonstrate how to replace the blocklist with an updated list.

Request Body​

PropertyTypeDescription
blocklistArrayArray of blocklist terms

Response​

Upon executing the request, with an array of updated blocklists. A sample payload might look like this.

[ "admin", "info", "marketing", "admin*", "*test*", "*user" ]

Example 1: Update the Blocklist​

This example updates the blocklist with a new list of prefixes. Please note that this method acts on the entire blocklist, replacing all the existing values.

Request​

PUT https://api.easylife365.cloud/admin/v1/blocklist
Content-Type: application/json

[ "admin", "info", "marketing", "admin*", "*test*", "*user" ]

Response​

[ "admin", "info", "marketing", "admin*", "*test*", "*user" ]

Example 2: Update the Blocklist using PowerShell​

The following example demonstrates updating the blocklist using PowerShell. Before executing the script, ensure you've registered an application and obtained the TenantId and ClientId. Also, retrieve the correct URI and scope from this document.

$tenantId = "[TENANT_ID]"
$scope = "[SCOPE]"
$uri = "[URI]"

az login --tenant $tenantId | Out-Null

$accessToken = az account get-access-token `
--tenant $tenantId `
--scope $scope `
--query accessToken `
--output tsv

# Create object with values to pass to the API.
$body = @(
"admin",
"info",
"marketing",
"admin*",
"*test*",
"*user"
)

# Invoke the API and capture responses.
$jsonBody = $body | ConvertTo-Json -Depth 5 -Compress
$encodedBody = [System.Text.Encoding]::UTF8.GetBytes($jsonBody)

$headers = @{
"Authorization"= "Bearer $($accessToken)"
"Content-Type" = "application/json"
}

Write-Information "Setting the blocklist to: $jsonBody" -InformationAction Continue
Invoke-RestMethod -Method PUT -Uri $uri -Headers $headers -Body $encodedBody