# Stabilitätsklassen und Auslauf

Jede Operation der Spezifikation trägt eine Klasse, und eine auslaufende Operation kündigt sich in ihren eigenen Antworten an. Diese Seite sagt, was `stable`, `beta` und `internal` zusagen, wie lange zwischen Ankündigung und Abschaltung liegt und woran ein Client den Auslauf erkennt, ohne dass jemand eine Seite liest.

> **Typ:** nachschlagen
> **Für wen:** Wer eine Integration betreibt und wissen will, worauf er sich verlassen darf und wie früh er von einer Abschaltung erfährt.
> **Voraussetzung:** keine

## Die drei Klassen

Jede Operation trägt die Erweiterung `x-stability`:

| Klasse | Was sie zusagt |
|---|---|
| `stable` | Pfad, Pflichtfelder und Fehlercodes ändern sich nicht ohne neue Version. Ein Feld kann dazukommen, keines verschwindet. Bis zur Beta mit einer Ausnahme, siehe [unten](#bis-zur-beta-ausnahmen-von-der-zusage). |
| `beta` | Öffentlich, aber jung: Die Form kann sich noch bewegen, bis sie einen Zyklus ohne Bruch überstanden hat. Bauen Sie darauf, aber lesen Sie die Notizen. |
| `internal` | Kein Teil der öffentlichen Fläche. Diese Operationen stehen weder in der Referenz noch in der Spezifikation dieser Seite. |

Die Klasse wird gesetzt, nicht geraten: Eine Operation ohne Klasse bricht die Erzeugung der öffentlichen Fassung ab. Eine unklassifizierte Route erscheint deshalb nie versehentlich draußen — und ebenso wenig verschwindet eine öffentliche stillschweigend.

Was `internal` trägt, ist die Innenansicht des Hauses: die Betreiber-Konsole, die Brücken zu Gerät und Anzeige-Anwendung, der Eingang des Zahlungsdienstleisters und die Diagnose. Für eine Organisation gibt es dort nichts zu rufen; ein Aufruf endet mit `403 Permission.OperatorOnly` oder gar nicht erst bei Ihnen.

## Wie ein Auslauf abläuft

Zwischen Ankündigung und Abschaltung einer Operation liegen **zwölf Monate**, ab der Beta ohne Ausnahme ([bis dahin](#bis-zur-beta-ausnahmen-von-der-zusage)).

1. **In der Spezifikation.** Die Operation trägt `deprecated: true` und `x-sunset` mit dem Abschalt-Tag. Wer aus der Spezifikation einen Client erzeugt, sieht den Auslauf beim Bauen; viele Generatoren markieren die Methode dann als veraltet.
2. **In jeder Antwort.** Die Operation antwortet weiter, trägt aber drei zusätzliche Kopfzeilen:

   ```http
   HTTP/1.1 200 OK
   Deprecation: true
   Sunset: Thu, 09 Sep 2027 00:00:00 GMT
   Link: </docs>; rel="deprecation"
   ```

3. **Am Stichtag.** Nach dem Datum aus `Sunset` antwortet die Operation nicht mehr.

Wer die Spezifikation nie gelesen hat, sieht den Auslauf also trotzdem: im Protokoll seines eigenen Clients.

## Bis zur Beta: Ausnahmen von der Zusage

Die Plattform ist bis Ende 2026 in der Alpha. Bis zur Beta dürfen auch Wege der Stabilität `stable` ohne Auslauf entfallen oder brechen. Jeder Bruch steht in den Änderungsnotizen des Zugs, unter „Entwickler“, mit dem Weg und dem, was an seine Stelle tritt. Ab der Beta gelten die Zusagen oben ohne Ausnahme.

Der Zug mit der neuen Auswertung hat davon Gebrauch gemacht:

| Weg | Was geschah |
|---|---|
| `GET /v1/analytics/playback`, `GET /v1/players/{playerId}/playback`, `GET /v1/media/assets/{assetId}/playback` | entfallen ohne Auslauf. Die neue Auswertung ersetzt sie: `GET /v1/analytics/overview`, `GET /v1/analytics/players/{playerId}/day` und `/plays`, `GET /v1/analytics/content` und `POST /v1/analytics/explore` |
| `GET /v1/analytics/insights/overview`, `POST /v1/analytics/insights/report` | entfallen ohne Auslauf, ersetzt durch den Überblick und die freie Auswertung |
| `/v1/analytics/reports` und die Wege darunter | Gestalt gewechselt: Die Abfrage eines Berichts ist die der freien Auswertung statt einer Kennzahl der alten Messreihen, Formate gibt es nur noch als `csv` und `pdf`. Seitdem `beta` |

Ein aus der Spezifikation erzeugter Client und `@szenera/client` vor diesem Zug bekommen für die entfallenen Wege `404` und für die alten Berichtsformen `400`. Was sich je Zug ändert, steht unter [Release-Züge, Notizen und Abkündigungen](/de/changes/release-notes).

## Was Ihr Client damit tun sollte

| Regel | Warum |
|---|---|
| Auf `Deprecation` in jeder Antwort achten und den Fund einmal je Route protokollieren | Ein Auslauf trifft selten alle Aufrufe gleichzeitig; eine Zeile je Route zeigt genau, was Sie noch benutzen. |
| `Sunset` mitschreiben und daraus eine Frist machen | Zwölf Monate sind lang genug, um es zu vergessen, und kurz genug, um dann zu spät zu sein. |
| Nicht auf `Link` verzweigen | Die Adresse führt zur Referenz, sie ist eine Lesehilfe für Menschen, kein Umzugsziel. |
| Bei `beta` die Spezifikation regelmäßig vergleichen | Siehe [Die Spezifikation gegen Ihren Stand vergleichen](/de/changes/compare-specification). |

Die Politik wird von zwei Wächtern ehrlich gehalten: Eine Ankündigung ohne `x-sunset` ist ein Fehler im Bau, und ein verstrichenes `x-sunset` an einer noch antwortenden Route ebenfalls.

## Wo Sie den Stand ablesen

| Quelle | Was sie sagt |
|---|---|
| `https://developer.szenera.com/api/openapi.json` | die öffentliche Spezifikation im Stand des aktuellen Zugs, mit `x-stability` und `x-sunset` je Operation |
| `GET /v1/openapi.json` an Ihrer Umgebung | dieselben Angaben für die Fassung, die dort tatsächlich läuft |
| [Änderungen im Handbuch](https://szenera.com/de/docs/help/whats-new) | was sich je Zug in der Oberfläche geändert hat, das Neueste zuerst |
| [Der Status der Plattform](https://szenera.com/status) | der aktuelle Zustand, angekündigte Wartungsfenster und die letzten Störungen |

Die Klasse steht auch in der Referenz an jeder Operation, siehe [Die Referenz lesen](/de/api/read-reference).

## Weiterführendes

- [Basis-URL, /v1 und Stabilität](/de/api/base-url-and-stability)
- [Die Spezifikation gegen Ihren Stand vergleichen](/de/changes/compare-specification)
- [Release-Züge, Notizen und Abkündigungen](/de/changes/release-notes)
