Shield Aliases API
API reference for creating and managing Shield masked email addresses.
Create and manage masked email addresses with Postscale Shield. All Shield aliases use the shared shield.postscale.io domain.
Create Shield Alias
POST /v1/shield/aliases
Create a new masked email alias that forwards to one or more real addresses.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
forward_to | array | Yes | Email addresses to forward incoming mail to |
description | string | No | Human-readable label for the alias |
Example Request
curl -X POST https://api.postscale.io/v1/shield/aliases \
-H "Authorization: Bearer ps_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"forward_to": ["jane@example.com"],
"description": "Shopping sites"
}'
Response
{
"alias": {
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"org_id": "f1e2d3c4-b5a6-7890-abcd-ef1234567890",
"domain_id": "92095226-b022-419c-b8bd-dd88b09cc052",
"address": "xk7m9p",
"domain": "shield.postscale.io",
"forward_to": ["jane@example.com"],
"action": "forward",
"is_masked": true,
"masked_description": "Shopping sites",
"emails_received": 0,
"active": true,
"created_at": "2026-01-18T10:30:00Z",
"updated_at": "2026-01-18T10:30:00Z"
}
}
The full email address for this alias is xk7m9p@shield.postscale.io.
List Shield Aliases
GET /v1/shield/aliases
Retrieve a paginated list of Shield aliases for your organization.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
limit | integer | Number of results (default: 50, max: 100) |
offset | integer | Number of results to skip |
Example Request
curl -X GET "https://api.postscale.io/v1/shield/aliases?limit=50" \
-H "Authorization: Bearer ps_live_your_api_key"
Response
{
"aliases": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"address": "xk7m9p",
"domain": "shield.postscale.io",
"forward_to": ["jane@example.com"],
"action": "forward",
"is_masked": true,
"masked_description": "Shopping sites",
"emails_received": 42,
"active": true,
"created_at": "2026-01-18T10:30:00Z",
"updated_at": "2026-01-18T10:30:00Z"
}
],
"total": 15,
"limit": 50,
"offset": 0,
"max_shield_aliases": 25
}
Get Shield Alias
GET /v1/shield/aliases/:id
Retrieve details for a specific Shield alias.
Example Request
curl -X GET https://api.postscale.io/v1/shield/aliases/a1b2c3d4-e5f6-7890-abcd-ef1234567890 \
-H "Authorization: Bearer ps_live_your_api_key"
Response
{
"alias": {
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"address": "xk7m9p",
"domain": "shield.postscale.io",
"forward_to": ["jane@example.com"],
"action": "forward",
"is_masked": true,
"masked_description": "Shopping sites",
"emails_received": 42,
"active": true,
"created_at": "2026-01-18T10:30:00Z",
"updated_at": "2026-01-18T10:30:00Z"
}
}
Update Shield Alias
PUT /v1/shield/aliases/:id
Update an existing Shield alias.
Request Body
| Field | Type | Description |
|---|---|---|
forward_to | array | Update forwarding addresses |
masked_description | string | Update the description |
active | boolean | Enable or disable the alias |
Example: Disable Alias
curl -X PUT https://api.postscale.io/v1/shield/aliases/a1b2c3d4-e5f6-7890-abcd-ef1234567890 \
-H "Authorization: Bearer ps_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"active": false
}'
Response
{
"alias": {
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"address": "xk7m9p",
"domain": "shield.postscale.io",
"forward_to": ["jane@example.com"],
"is_masked": true,
"active": false,
"updated_at": "2026-01-18T12:00:00Z"
}
}
Delete Shield Alias
DELETE /v1/shield/aliases/:id
Permanently delete a Shield alias.
Deleting an alias is permanent. The email address cannot be recovered or reused.
Example Request
curl -X DELETE https://api.postscale.io/v1/shield/aliases/a1b2c3d4-e5f6-7890-abcd-ef1234567890 \
-H "Authorization: Bearer ps_live_your_api_key"
Response
{
"status": "deleted"
}
Shield Alias Limits
The number of Shield aliases you can create depends on your plan:
| Plan | Max Shield Aliases |
|---|---|
| Free | 5 |
| Starter | 25 |
| Growth | 100 |
| Enterprise | 1,000 |
Reply Handling
Shield aliases support bidirectional communication. When an email is forwarded to you, the Reply-To header is rewritten to a reply address (r-{token}@shield.postscale.io). When you reply, it's automatically sent from the masked alias address, keeping your real email private.
Reply tokens expire after 90 days.