# Prezență

8 rute, cu exemplu de cerere pentru fiecare.

Adresa de bază: `https://app.ilustromania.com/nucleu`

## Modulul `prezenta`

### GET /v1/prezenta

Acces: `sesiune`

**Prezența online**

Entitățile prezenței online (profiluri, listări) vizibile omului, cu vârsta datelor, citite din fișierul generat.

```bash
curl https://app.ilustromania.com/nucleu/v1/prezenta \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### GET /v1/prezenta/istoric

Acces: `sesiune`

**Istoricul prezenței online**

Istoricul cifrelor prezenței online pe interval.

Parametri de interogare:

| Nume | Tip | Obligatoriu | Detalii |
| --- | --- | --- | --- |
| `entitate` | `string` | nu | — |
| `zile` | `integer` | nu | între 1 și 366; implicit `30` |

Răspuns 200:

| Câmp | Tip | Obligatoriu | Detalii |
| --- | --- | --- | --- |
| `randuri` | `object[]` | da | — |
| `randuri[].entitate` | `string` | da | nevid |
| `randuri[].firma_id` | `integer` | da | între 0 și 9007199254740991 |
| `randuri[].zi` | `string` | da | dată `AAAA-LL-ZZ` |
| `randuri[].citit_la` | `string` | da | moment ISO 8601 |
| `randuri[].cifre` | `object` | da | — |

```bash
curl https://app.ilustromania.com/nucleu/v1/prezenta/istoric \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

Răspuns 200 (exemplu din schemă):

```json
{
  "randuri": [
    {
      "entitate": "text",
      "firma_id": 1,
      "zi": "2026-11-12",
      "citit_la": "2026-11-12T09:30:00.000Z",
      "cifre": {}
    }
  ]
}
```

### GET /v1/prezenta/mini/{fisier}

Acces: `sesiune`

**Miniatura unei postări**

Servește miniatura JPEG a unei postări, doar cu nume `[a-z0-9-]+.jpg` din folderul de miniaturi; 404 la alt nume.

Parametri de cale:

| Nume | Tip | Descriere |
| --- | --- | --- |
| `fisier` | `string` | valoarea din cale |

```bash
curl https://app.ilustromania.com/nucleu/v1/prezenta/mini/{fisier} \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### POST /v1/prezenta/plecat

Acces: `sesiune`

**Pagina s-a ascuns**

Notează că omul a ascuns pagina (trimis prin `sendBeacon`, fără corp); contul vine doar din sesiune. 409 când scrierea e oprită.

```bash
curl -X POST https://app.ilustromania.com/nucleu/v1/prezenta/plecat \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{ … }'
```

### GET /v1/prezenta/social

Acces: `sesiune`

**Conturile sociale**

Detaliul conturilor sociale vizibile omului, cu vârsta datelor.

```bash
curl https://app.ilustromania.com/nucleu/v1/prezenta/social \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### POST /v1/prezenta/urme

Acces: `sesiune`

**Lot de urme de navigare**

Primește un lot de urme din pagină (JSON sau `text/plain`); 400/413 la lot invalid sau prea mare, 429 prea des. Contul fără uuid primește 200 fără scriere.

```bash
curl -X POST https://app.ilustromania.com/nucleu/v1/prezenta/urme \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{ … }'
```

## Modulul `shell`

### GET /v1/alerte

Acces: `sesiune`

**Alertele mele**

Alertele omului după firma și rolul lui; dreptul `alerte.citeste`, 503 sursă indisponibilă.

Răspuns 200:

| Câmp | Tip | Obligatoriu | Detalii |
| --- | --- | --- | --- |
| `scris_la` | `string` | da | moment ISO 8601 |
| `alerte` | `object[]` | da | — |
| `alerte[].id` | `string` | da | — |
| `alerte[].t` | `string` | da | — |
| `alerte[].ton` | `string` | da | una din: ``, `is-pericol` |
| `alerte[].n` | `integer` | da | între 0 și 9007199254740991 |
| `alerte[].ora` | `string` | da | — |
| `alerte[].lista` | `string[]` | da | — |

```bash
curl https://app.ilustromania.com/nucleu/v1/alerte \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

Răspuns 200 (exemplu din schemă):

```json
{
  "scris_la": "2026-11-12T09:30:00.000Z",
  "alerte": [
    {
      "id": "text",
      "t": "text",
      "ton": "",
      "n": 1,
      "ora": "text",
      "lista": []
    }
  ]
}
```

### GET /v1/prezenta/oameni

Acces: `sesiune`

**Oamenii prezenți acum**

Colegii din firma activă cu prezența lor în aplicație (fără omul care cere); vedere completă sau redusă după drept.

```bash
curl https://app.ilustromania.com/nucleu/v1/prezenta/oameni \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```
