# Custom Emails

## Send Custom Email

{% embed url="<https://youtu.be/TKUJrk5WVvo?si=4vKztfvFX2ODN5Sf>" %}

The purpose of this example is to send an email to account managers when a Retest is requested.

This example Flow can be downloaded from our [Flows GitHub Repository](https://github.com/AttackForge/Flows) and [imported](#importing-exporting-flows) into your AttackForge.

**Initial Set Up**

> **Important**: This example requires access to the AttackForge Self-Service API and AttackForge Flows

* **Event**: Project Retest Requested
* **Secrets**:
  * af\_auth - your [AttackForge Self-Service API token](https://support.attackforge.com/attackforge-enterprise/modules/self-service-restful-api/getting-started#accessing-the-restful-api).

**Action 1 - Send Email to Account Managers**

* **Method**: POST
* **URL**: https\://\<YOUR-ATTACKFORGE>/api/ss/email
* **Headers**:
  * Key = Content-Type; Type = Value; Value = application/json
  * Key = X-SSAPI-Key; Type = Value; Value = af\_auth
* **Request Script**:

```javascript
return {
  request: { 
    body: {
      to: [
        "admin@attackforge.com",
        {
          "user_id": "67b45e6de6da84559d9860fc"
        },
      ],
      cc: [
        "support@attackforge.com"
      ],
      subject: "New Project Requested - Please Follow Up",
      text: data.project_request_name + ' just requested to start on ' + data.project_request_start_date,
      html: '<p>[<b>' + data.project_request_name + '</b>] just requested to start on [<b>' + data.project_request_start_date + '</b>]</p>'
    },
  },
};
```

* **Response Script**:

```javascript
const body = JSON.parse(response.body);

if (body?.status === 'Accepted') {
  return {
    decision: {  
      status: 'finish',
      message: 'Email sent!'
    },  
  };
}
else {
  return {
    decision: {  
      status: 'abort',
      message: 'Email not sent'
    }
  };
}
```
