[Intum](https://intum.fr/aide.md) / [Mail](https://intum.fr/aide/mail.md)

# [Filtry antyspamowe](https://intum.fr/aide/mail/filtry-antyspamowe.md) | [API](#api)

## Czym są filtry antyspamowe?

Filtry antyspamowe automatycznie oznaczają niechciane [e-maile](e-maile) jako spam na podstawie adresu nadawcy, domeny lub tematu. Działają niezależnie od [filtrów](filtry) — są prostsze i dedykowane wyłącznie do ochrony przed spamem.

## Rodzaje filtrów

Filtr antyspamowy może blokować e-maile na podstawie:

- **E-mail nadawcy** — konkretny adres (np. `spam@firma.pl`)
- **Domena** — wszystkie adresy z danej domeny (np. `spam-firma.com`)
- **Temat** — wiadomości zawierające określoną frazę w temacie

Można łączyć warunki — np. e-mail z konkretnej domeny **i** z określonym tematem.

## Filtry per użytkownik i per konto

Filtry antyspamowe mogą działać na dwóch poziomach:

- **Per konto** — blokuje spam dla wszystkich [użytkowników](../organizacja/uzytkownik) w koncie
- **Per użytkownik** — blokuje spam tylko dla konkretnego użytkownika

Filtry per użytkownik mają **wyższy priorytet** niż filtry per konto.

## Tworzenie filtra antyspamowego

1. Przejdź do **Mail** → **Filtry antyspamowe**
2. Kliknij **+** (Nowy filtr)
3. Wypełnij:
   - **E-mail nadawcy** — adres do zablokowania
   - **Domena** — domena do zablokowania (alternatywa dla e-maila)
   - **Temat** — fraza w temacie
   - **Użytkownik** — opcjonalnie, filtr per użytkownik
4. Zapisz

Filtr antyspamowy można też utworzyć bezpośrednio z widoku e-maila — przycisk **Oznacz jako spam** automatycznie tworzy filtr.

## Priorytet filtrów

System automatycznie wylicza priorytet na podstawie precyzyjności:

1. E-mail + temat (najwyższy)
2. E-mail
3. Domena + temat
4. Temat
5. Domena (najniższy)

## Licznik spamu

Każdy filtr ma licznik ile e-maili został zablokowany (`spam_count`).

## Ważne informacje

- Podaj **e-mail** lub **domenę** — nie oba jednocześnie
- E-mail nadawcy musi być **unikalny** w ramach konta/użytkownika
- Filtr per użytkownik ma priorytet nad filtrem per konto

---

## API

### Ogólne API

# Intum API

Dokumentacja API platformy [Intum](https://intum.pl) - system operacyjny firmy.

## Host

Host jest zawsze taki sam jak adres konta: `xxxx.intum.com` lub `xxx.intum.pl` (w zależności od ustawień konta)

## Autoryzacja

Wszystkie requesty API wymagają `api_token`:
- header: `Authorization: Bearer TOKEN`

Token możesz wygenerować w **Ustawienia Konta** → **Tokeny API**

## Endpointy

| Metoda | Ścieżka | Opis |
|--------|---------|------|
| GET | `/mail/spam_filters.json` | Lista filtrów antyspamowych |
| GET | `/mail/spam_filters/:id.json` | Pojedynczy filtr |
| POST | `/mail/spam_filters.json` | Utworzenie filtra |
| PATCH | `/mail/spam_filters/:id.json` | Aktualizacja filtra |
| DELETE | `/mail/spam_filters/:id.json` | Usunięcie filtra |

**Autoryzacja:** `Authorization: Bearer TOKEN` (uprawnienie: **mail**)

## Pola filtra antyspamowego

| Pole | Typ | Wymagane | Opis |
|------|-----|----------|------|
| `email` | string | warunkowo | E-mail nadawcy (wymagany gdy brak domeny i tematu) |
| `domain` | string | nie | Domena nadawcy (nie łączyć z e-mailem) |
| `subject` | string | nie | Fraza w temacie |
| `kind` | string | tak | Akcja: `spam` |
| `user_id` | integer | nie | ID użytkownika (null = filtr per konto) |

## Tworzenie filtra

```
POST /mail/spam_filters.json
Authorization: Bearer TOKEN
```

```json
{
  "spam_filter": {
    "domain": "spam-firma.com",
    "kind": "spam"
  }
}
```

## Filtr per użytkownik

```json
{
  "spam_filter": {
    "email": "nadawca@spam.com",
    "kind": "spam",
    "user_id": 5
  }
}
```

## Błędy (422)

```json
{"email": ["nie może być puste"]}
```