[Intum](https://intum.fr/aide.md) / [Organizacja](https://intum.fr/aide/organizacja.md)

# [Statusy](https://intum.fr/aide/organizacja/statusy.md) | [API](#api)

## Czym są statusy?

Statusy opisują etap realizacji elementu — zadania, maila, klienta, kontaktu lub szansy sprzedaży. Każdy status ma nazwę, kolor, kategorię i priorytet wyświetlania.

## Kategorie statusów

Każdy status należy do jednej z czterech kategorii:

- **Do zrobienia** (todo) — element oczekuje na rozpoczęcie
- **W toku** (in_progress) — trwają prace
- **Gotowe** (ready) — element jest gotowy do weryfikacji/odbioru
- **Zakończone** (done) — element jest zamknięty

Kategorie są używane w widoku Kanban — kolumny tablicy odpowiadają kategoriom.

## Dostępność w modułach

Status może być używany w wybranych modułach:

- **Wszystkie moduły** — domyślnie status jest globalny
- **Zadania** — statusy zadań
- **Maile** — statusy wiadomości e-mail
- **Klienci** — statusy klientów CRM
- **Kontakty** — statusy kontaktów
- **Szanse sprzedaży** — statusy dealów

## Statusy a zespoły

Statusy można przypisać do konkretnych [zespołów](zespol). Dzięki temu każdy zespół widzi tylko relevantne dla siebie statusy. Jeśli status nie jest przypisany do żadnego zespołu — jest dostępny dla wszystkich.

## Zamknięcie statusu

Status może być oznaczony jako **zamykający** (`closed: true`). Ustawienie zadania na status zamykający automatycznie oznacza je jako zamknięte.

## Tworzenie statusu

1. Przejdź do **Zadania** → **Statusy**
2. Kliknij **+** (Nowy status)
3. Wypełnij:
   - **Nazwa** — unikalna w ramach konta
   - **Kategoria** — Do zrobienia, W toku, Gotowe lub Zakończone
   - **Kolor** — kolor wyświetlania (hex)
   - **Zamykający** — czy ustawienie tego statusu zamyka element
   - **Moduły** — gdzie status ma być dostępny
   - **[Zespoły](zespol)** — opcjonalne ograniczenie do zespołów
4. Zapisz

## Kolejność wyświetlania

Statusy są wyświetlane według priorytetu. Kolejność można zmieniać przyciskami **w górę** / **w dół** na liście statusów.

## Usuwanie statusu

Przy usuwaniu statusu, który jest używany, system wymaga wskazania **statusu zastępczego** — wszystkie elementy z usuwanego statusu zostaną przeniesione na nowy.

## Liczniki

Każdy status ma liczniki pokazujące ile elementów jest w danym statusie:

- Liczba zadań
- Liczba klientów
- Liczba kontaktów
- Liczba dealów
- Liczba maili

## Ważne informacje

- Nazwa statusu musi być **unikalna** w ramach konta i typu
- Status może być **dezaktywowany** bez usuwania
- Zmiana statusu zadania jest rejestrowana w historii aktywności
- Statusy zamykające automatycznie ustawiają `closed: true` na elemencie

---

## 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 | `/organize/statuses.json` | Lista statusów |
| GET | `/organize/statuses/:id.json` | Pojedynczy status |
| POST | `/organize/statuses.json` | Utworzenie statusu |
| PATCH | `/organize/statuses/:id.json` | Aktualizacja statusu |
| DELETE | `/organize/statuses/:id.json` | Usunięcie statusu |

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

## Pola statusu

| Pole | Typ | Wymagane | Opis |
|------|-----|----------|------|
| `name` | string | tak | Nazwa statusu (unikalna) |
| `description` | string | nie | Opis statusu |
| `kind` | string | nie | Typ: `tasks` (domyślnie) |
| `category` | string | nie | Kategoria: `todo`, `in_progress`, `ready`, `done` |
| `color` | string | nie | Kolor hex (domyślnie `#3730A3`) |
| `closed` | boolean | nie | Czy status zamykający |
| `active` | boolean | nie | Czy aktywny |
| `priority` | number | nie | Priorytet wyświetlania |
| `all_modules` | boolean | nie | Dostępny we wszystkich modułach |
| `use_in_tasks` | boolean | nie | Dostępny w zadaniach |
| `use_in_emails` | boolean | nie | Dostępny w mailach |
| `use_in_clients` | boolean | nie | Dostępny w klientach |
| `use_in_contacts` | boolean | nie | Dostępny w kontaktach |
| `use_in_deals` | boolean | nie | Dostępny w dealach |
| `team_ids` | array | nie | ID zespołów, w których status jest dostępny |

## Tworzenie statusu

```
POST /organize/statuses.json
Authorization: Bearer TOKEN
```

```json
{
  "status": {
    "name": "Do weryfikacji",
    "category": "ready",
    "color": "#8B5CF6",
    "use_in_tasks": true,
    "all_modules": false,
    "team_ids": [1, 2]
  }
}
```

## Aktualizacja statusu

```
PATCH /organize/statuses/:id.json
```

```json
{
  "status": {
    "closed": true,
    "category": "done"
  }
}
```

## Zmiana kolejności

| Metoda | Ścieżka | Opis |
|--------|---------|------|
| POST | `/organize/statuses/:id/up.json` | Przesuń w górę |
| POST | `/organize/statuses/:id/down.json` | Przesuń w dół |

## Błędy (422)

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