# Inbox und Zeit

## Inbox lesen: `list_notifications`

Zeigt die Meldungen an dich aus allen Organisationen, die der Token erreicht, die neueste
Aktivität zuerst. Ohne Angabe kommen nur ungelesene.

| Argument | Bedeutung |
|---|---|
| `status` | `unread` (Standard), `read` oder `all` |
| `since` | nur Aktivität nach diesem Zeitpunkt, ISO 8601 mit Offset oder `Z` |
| `organisation_id` | nur diese Organisation |
| `project_id` | nur dieses Projekt |
| `page`, `per_page` | Seite, höchstens 100 je Seite |

Jede Zeile trägt einen lesbaren Text. Zeilen zu einem Ticket nennen dazu ID, Nummer, Titel und
`project_id`, damit der Agent das Ticket direkt mit `get_ticket` öffnen kann.
`meta.by_organisation` zählt die Ungelesenen je Organisation.

Damit der Agent alle Organisationen sieht, braucht er einen Token mit **Alle Organisationen,
auch künftige**. Ein Token für einzelne Projekte zählt nur diese.

## Als gelesen markieren: `mark_notification_read`

Nimmt die `notification_id` aus der Liste. Eine schon gelesene Meldung bleibt gelesen, eine
archivierte lehnt Lalabase ab. Das Lesen allein markiert nichts.

## Zeit buchen: `create_time_session`

Bucht Zeit auf ein Ticket, immer auf deinen Namen.

| Argument | Bedeutung |
|---|---|
| `ticket_id` | Pflicht, die ID des Tickets |
| `duration` | `1:30` (Stunden:Minuten), `90` (Minuten) oder `1.5` (Stunden) |
| `duration_minutes` | Minuten als Zahl, statt `duration`; genau eines von beiden ist Pflicht |
| `occurred_on` | Tag der Arbeit, Standard ist heute in deiner Zeitzone |
| `description` | interne Beschreibung |
| `customer_description` | Beschreibung für den Kunden |

Eine Buchung umfasst höchstens 24 Stunden. Ob du auf dem Ticket buchen darfst, entscheiden wie
immer deine Rechte im Projekt.

## Gebuchte Zeit: `summarize_time_sessions`

Rechnet die Zeit eines Projekts nach Abrechnungsstand zusammen und liefert Summen, keine
einzelnen Buchungen.

| Summe | Bedeutung |
|---|---|
| `billed` | abgerechnet, mit Rechnungsnummer |
| `in_billing` | in einer offenen Abrechnung |
| `without_billing` | noch keiner Abrechnung zugeordnet |
| `not_invoiced` | `in_billing` und `without_billing` zusammen |
| `total` | alles |

Filter sind `start_date`, `end_date`, `creator` (`me` oder eine Benutzer-ID) und `ticket` (ID
oder Nummer). Das Feld `scope` sagt, ob die Zahlen alle Buchungen des Projekts abdecken oder
nur deine eigenen (`own`). Das hängt von deinen Rechten ab.
