[Intum](https://intum.fr/aide.md) / [CRM](https://intum.fr/aide/crm.md)

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

## Statusy klientów

Statusy pozwalają klasyfikować [klientów](klienci), [kontakty](kontakty) i [interesy](interesy) według etapu obsługi. Przykładowe statusy: "Nowy", "Aktywny", "VIP", "Nieaktywny".

## Właściwości statusu

- **Nazwa** — wyświetlana na liście i w filtrach
- **Kolor** — kolor wyróżniający status na listach
- **Priorytet** — kolejność wyświetlania (można zmieniać strzałkami góra/dół)
- **Aktywny** — czy status jest dostępny do wyboru
- **Zamknięty** — oznaczenie statusu końcowego (np. "Nieaktywny")

## Zastosowanie

### Pipeline sprzedażowy

Statusy tworzą pipeline dla interesów — np.:
1. Kontakt
2. Oferta wysłana
3. Negocjacje
4. Wygrana / Przegrana

### Segmentacja klientów

Grupowanie klientów według etapu współpracy — np. "Potencjalny", "Aktywny", "Premium", "Utracony".

## Usuwanie statusu

Jeśli status jest przypisany do klientów/kontaktów/interesów — przed usunięciem trzeba wybrać status, na który zostaną przepisane powiązane rekordy.

## Liczniki

Każdy status pokazuje ile klientów, kontaktów i interesów jest do niego przypisanych.

---

## 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 | `/crm/statuses.json` | Lista statusów |
| GET | `/crm/statuses/:id.json` | Pojedynczy status |
| POST | `/crm/statuses.json` | Utworzenie statusu |
| PATCH | `/crm/statuses/:id.json` | Aktualizacja statusu |
| DELETE | `/crm/statuses/:id.json` | Usunięcie statusu |
| POST | `/crm/statuses/:id/up` | Przesuń w górę (priorytet) |
| POST | `/crm/statuses/:id/down` | Przesuń w dół (priorytet) |

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

## Pola status

| Pole | Typ | Wymagane | Opis |
|------|-----|----------|------|
| `name` | string | tak | Nazwa statusu (unikalna per konto) |
| `description` | string | nie | Opis statusu |
| `color` | string | nie | Kolor HEX (domyślnie `#bcbeff`) |
| `active` | boolean | nie | Czy aktywny (domyślnie `true`) |
| `closed` | boolean | nie | Czy zamknięty (domyślnie `false`) |
| `priority` | decimal | nie | Priorytet sortowania |

## Przykład utworzenia

```json
{
  "api_token": "TOKEN",
  "status": {
    "name": "Nowy klient",
    "color": "#3b82f6",
    "active": true
  }
}
```

## Odpowiedź

```json
{
  "id": 1,
  "name": "Nowy klient",
  "color": "#3b82f6",
  "active": true,
  "closed": false,
  "priority": "10.0",
  "description": null
}
```

## Usuwanie z przepisaniem

Gdy status ma powiązane rekordy, najpierw pobierz informację:

```
GET /crm/statuses/:id/destroy_with_change
```

Następnie usuń z przepisaniem:

```
POST /crm/statuses/:id/destroy_with_change?new_status_id=2
```