Entwickler · API v1.0.0

Versionsunterstützung und Versionierungsrichtlinie

Aktuelle Version

Aktuelle API-Version 1.0.0
Base path /api/v1
Älteste unterstützte Version 1.0.0
Versionsabfrage GET /api/v1/version sowie der Header X-NotiPilot-API-Version in jeder Antwort

Status der API-Versionen

Version Base path Status Supportende
1.x /api/v1 ✅ Aktiv Noch nicht festgelegt (frühestens 12 Monate nach Veröffentlichung von v2)
Unversioniert (Legacy) /api/ ⚠️ Aus Kompatibilitätsgründen beibehalten, verhält sich exakt wie v1 Wird mit der Veröffentlichung von v2 bekannt gegeben

Verwenden Sie für neue Integrationen immer /api/v1.

Versionierungsregeln

Die NotiPilot-API folgt Semantic Versioning (MAJOR.MINOR.PATCH):

Art der Änderung Beispiel Version Ist eine Anpassung der mobilen App nötig?
PATCH Fehlerbehebung, Performance-Verbesserung 1.0.0 → 1.0.1 Nein
MINOR Neues optionales Feld, neuer Endpoint, neues Feld in der Antwort 1.0.x → 1.1.0 Nein
MAJOR Entfernen/Umbenennen eines Felds, neues Pflichtfeld, geändertes Verhalten 1.x → 2.0.0 Ja — neuer Base path (/api/v2)

Zusage zur Abwärtskompatibilität (innerhalb derselben MAJOR-Version):

  • Bestehende Request-Felder werden weder entfernt noch umbenannt noch zu Pflichtfeldern gemacht.
  • Antworten können neue Felder erhalten; Clients müssen unbekannte Felder ignorieren.
  • Neue error-Codes können hinzukommen; Clients sollten unbekannte Codes anhand des HTTP-Statuscodes behandeln.
  • Nach Veröffentlichung einer neuen MAJOR-Version wird die vorherige MAJOR-Version mindestens 12 Monate weiter unterstützt. Eine Abkündigung wird mindestens 6 Monate im Voraus über das Dashboard und per E-Mail angekündigt.

Plattform-Supportmatrix

Da die NotiPilot-API auf Standard-HTTPS + JSON basiert, funktioniert sie mit jedem Client, der HTTP-Requests senden kann. Die folgende Tabelle zeigt die Versionen, mit denen der in den Leitfäden beschriebene Push-Benachrichtigungsablauf getestet und unterstützt wird.

Plattform Minimum Empfohlen Push-Token-Methode Leitfaden
Expo SDK 50 Aktuelles SDK expo-notifications → Expo Push Token expo.md
React Native (bare) RN 0.74 Aktuelles RN expo-notifications (empfohlen) oder Firebase Messaging + Token-Konvertierung react-native.md
Flutter Flutter 3.22, Dart 3.4 Aktuelles Stable firebase_messaging → Konvertierung in Expo Push Token flutter.md
Ionic (Capacitor) Capacitor 6, Ionic 7 Aktuell @capacitor/push-notifications → Konvertierung in Expo Push Token ionic.md
Firebase (FCM) Android BoM 33, iOS SDK 10 Aktuell FCM- (Android) / APNs-Token (iOS) → Konvertierung in Expo Push Token firebase.md
Shopify-Shop-Apps Storefront API 2025-01 Aktuelle API-Version Abhängig von der Technologie der App shopify.md
Android (Java) Android 6.0 (API 23), Java 11 targetSdk 35+, Java 17 FCM → Konvertierung in Expo Push Token android.md
Kotlin Android 6.0 (API 23), Kotlin 1.9 targetSdk 35+, Kotlin 2.x FCM → Konvertierung in Expo Push Token kotlin.md
iOS (Objective-C) iOS 13.0, Xcode 15 iOS 15+ APNs → Konvertierung in Expo Push Token ios.md
Swift iOS 13.0, Swift 5.9, Xcode 15 iOS 15+, Swift 6 APNs → Konvertierung in Expo Push Token swift.md
Web / PWA – – Die API akzeptiert den Wert platform: "web", die Zustellung von Web Push wird in 1.0.0 jedoch nicht unterstützt –

Plattformspezifische Hinweise

  • Android 13+ (API 33): Zum Anzeigen von Benachrichtigungen ist die Laufzeitberechtigung POST_NOTIFICATIONS erforderlich.
  • Android 8.0+ (API 26): Benachrichtigungen benötigen einen Kanal. NotiPilot verwendet die Kanal-ID default.
  • iOS: Für Push-Benachrichtigungen sind ein kostenpflichtiger Apple-Developer-Account, die Capability Push Notifications und ein physisches Gerät erforderlich. Debug-Builds nutzen die APNs-Sandbox, TestFlight-/App-Store-Builds die Production-Umgebung.
  • Expo Go: Remote-Push-Benachrichtigungen werden in Expo Go nicht unterstützt; verwenden Sie einen Development Build.

Unterstützung der Zustellungsanbieter (API 1.0.0)

provider Registrierung In Segmenten sichtbar Zustellung von Benachrichtigungen
expo ✅ ✅ ✅ Über den Expo Push Service
fcm ✅ ✅ ❌ Auf der Roadmap
apns ✅ ✅ ❌ Auf der Roadmap

Native Apps erhalten schon heute volle Zustellungsunterstützung, indem sie den FCM-/APNs-Token mit der in den Leitfäden beschriebenen Methode in einen Expo Push Token konvertieren.

Änderungsprotokoll

1.0.0 — September 2026

  • Erste stabile Version.
  • Base path /api/v1 und Endpoint GET /api/v1/version hinzugefügt. Die unversionierten Adressen /api/* bleiben aus Kompatibilitätsgründen erhalten.
  • Einheitliches Fehlerformat: success, error (maschinenlesbarer Code), message, errors (feldbezogen).
  • app_id muss nun bei NotiPilot registriert sein; andernfalls 404 unknown_app.
  • Feldvalidierungen: Typ- und Längenbeschränkungen, Limits für Attributes/Tags.
  • attributes werden nun zusammengeführt aktualisiert; nicht gesendete Schlüssel werden nicht gelöscht. Um einen Schlüssel zu löschen, senden Sie null.
  • Rate Limit von 300 Requests pro Minute und IP (429 + Retry-After).
  • Header X-NotiPilot-API-Version in jeder Antwort.