> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pikselsystems.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Set up email alerts and notifications

> Control which Piksel events trigger an email to you — screen offline alerts, smart rule changes, and weekly summaries — and verify delivery with a test email.

Piksel can send you email alerts so you know when something important happens without having to check the dashboard. You control which notifications you receive, and you can send a test email at any time to confirm that delivery is working correctly.

## Notification types

Piksel supports three categories of email notification:

| Preference                            | What triggers it                                                   |
| ------------------------------------- | ------------------------------------------------------------------ |
| **Offline alerts** (`offline_alerts`) | Sent when a paired screen goes offline and is no longer reachable. |
| **Rule triggers** (`rule_triggers`)   | Sent when a smart rule activates or clears on any of your screens. |
| **Weekly summary** (`weekly_summary`) | A periodic digest of account activity sent once per week.          |

<Info>
  Offline alerts and rule trigger notifications are enabled by default. The weekly summary is disabled by default.
</Info>

## Enable or disable notifications

<Steps>
  <Step title="Open Notification settings">
    From the dashboard, go to your **Profile** or **Account settings** and select the **Notifications** tab.
  </Step>

  <Step title="Toggle each notification type">
    Use the toggles next to **Offline alerts**, **Rule triggers**, and **Weekly summary** to enable or disable each one independently.
  </Step>

  <Step title="Save your preferences">
    Click **Save** to apply your changes. Your preferences take effect immediately for future events.
  </Step>
</Steps>

## Set a language preference for emails

Piksel sends notification emails in the language associated with your profile. To change the language, update your language preference in your profile settings. All future notification emails — including the test email — will use the new language.

## Send a test email

Use the test email feature to confirm that notifications are reaching your inbox before an actual event occurs.

<Steps>
  <Step title="Open Notification settings">
    Navigate to the **Notifications** tab in your profile or account settings.
  </Step>

  <Step title="Click Send test email">
    Click the **Send test email** button. Piksel sends a test message to the email address on your account, using your currently configured language preference.
  </Step>

  <Step title="Check your inbox">
    Check your inbox for the test message. If it doesn't arrive within a few minutes, check your spam folder.
  </Step>
</Steps>

<Tip>
  Send a test email after changing your language preference to confirm the new language is applied correctly.
</Tip>

## API reference

<AccordionGroup>
  <Accordion title="Get preferences — GET /api/notifications/preferences">
    Returns your current notification preferences.

    ```bash theme={null}
    GET /api/notifications/preferences
    ```

    Example response:

    ```json theme={null}
    {
      "offline_alerts": true,
      "rule_triggers": true,
      "weekly_summary": false
    }
    ```
  </Accordion>

  <Accordion title="Update preferences — PUT /api/notifications/preferences">
    Updates one or more notification preferences. Pass only the fields you want to change.

    ```bash theme={null}
    PUT /api/notifications/preferences
    ```

    ```json theme={null}
    {
      "offline_alerts": true,
      "rule_triggers": false,
      "weekly_summary": true
    }
    ```
  </Accordion>

  <Accordion title="Send test email — POST /api/notifications/test">
    Sends a test notification email to your account's email address using your current language preference.

    ```bash theme={null}
    POST /api/notifications/test
    ```

    Example response:

    ```json theme={null}
    {
      "status": "sent",
      "email": "you@example.com",
      "lang": "en"
    }
    ```
  </Accordion>
</AccordionGroup>
