---
title: "Service: /members/{member}/groups/{group}/mail/send [POST]"
source: https://dev.pageseeder.com/api/services/send-mail-POST.html
description: "Sends an email message to group members or specified recipients by transforming XML content using XSLT templates. Supports multiple notification modes and requires appropriate permissions based on parameters."
last_updated: 2026-09-02T11:36:12+10:00
document_type: api_endpoint
operation_id: mail-POST
resource_id: mail
path_template: /members/{member}/groups/{group}/mail/send
http_method: POST
api_category: mail
implementation_version: 6.3000
api_since: 5.5003
deprecated_since: null
obsolete_since: null
api_support: supported
cache_control: N/A
generated_at: 2026-09-02
tokens: ~732
---

# /members/\{member\}/groups/\{group\}/mail/send \[POST\]

## Description

Send an email message.

Use XSLT and the specified template to transform the provided XML content into an email message.

Send the message to one of the following four destinations:

- `normal` – all members of the group according to their notification settings.
- `announce` – send to all members of the group ignoring their notification settings.
- `self` – send to member currently logged in.
- `recipients` – send to the email addresses specified in the parameter `recipients` .

The default option is *normal*.

> **Note:** If the template specified is external, then the content parameter XML is wrapped in a \<notification\> element which follows the same format as for the other templates and includes a \<group\> element.

> **Warning:** Setting the parameter `internal=true` allows the email to be received by a PageSeeder group on this or another server but disables the email loop detection headers, so ensure that the email cannot trigger another internal email from this service.

## Parameters

| Name | Description | Required | Type | Default |
| --- | --- | --- | --- | --- |
| content | The XML to be transformed into the body of the message | yes | xml |  |
| name | The email template to use | yes | string |  |
| recipients | If `notify` is set to `recipients`, a comma-separated list of email addresses must be included | maybe | string |  |
| groups | Comma-separated list of additional groups to send the email to (`notify` must be `normal`\|`announce`) | no | string |  |
| attachments | Comma-separated list of URLs to attach to message | no | string |  |
| notify | Who the message is being sent to \[`normal`\|`announce`\|`self`\|`recipients`\] | no | enum | `normal` |
| from | Who the email is from \[`member`\|`group`\|`pageseeder`\|`system`\] (administrators and `template='external'` only) | no | enum | `member` |
| subject | The message subject, if it is not specified in the XSLT template | no | string | PageSeeder Email |
| notify-async | Whether emails should be sent asynchronously (for slow email servers) | no | boolean | `false` |
| internal | Whether email will be sent to a pageseeder group on this or another server (administrators only) | no | boolean | `false` |

## Permission

The security required to access this service depends on the `from`, `template`, `internal` and `notify` parameters. If using an OAuth token for administrator the `account-manager` scope is required.

- `from=[anything]` – administrator
- `template=[not external]` – administrator
- `internal=true` – administrator
- `notify=recipients` – administrator
- `notify=normal`|`announce` – contributor and higher
- `notify=self` – reviewer and higher

## Response

The XML output has the following format:

```xml

<email-notification delayed="[true|false]" />
```

## Error Handling

No specific errors expected for this service.

