Skip to content
Diese Seite wurde mit KI-Unterstützung erstellt und übersetzt. Falls Ihnen Ungenauigkeiten auffallen, helfen Sie gerne bei der Verbesserung. Auf GitHub bearbeiten

API-Übersicht

Fenfa stellt eine REST-API für das Hochladen von Builds, die Verwaltung von Produkten und das Abfragen von Analysen bereit. Alle programmatischen Interaktionen -- von CI/CD-Uploads bis zu Admin-Panel-Operationen -- laufen über diese API.

Basis-URL

Alle API-Endpunkte sind relativ zur Fenfa-Server-URL:

https://ihre-domain.com

Authentifizierung

Geschützte Endpunkte erfordern einen X-Auth-Token-Header. Fenfa verwendet zwei Token-Scopes:

ScopeKannHeader
uploadBuilds hochladenX-Auth-Token: YOUR_UPLOAD_TOKEN
adminVollständiger Admin-Zugriff (inkl. Upload)X-Auth-Token: YOUR_ADMIN_TOKEN

Token werden in config.json oder über Umgebungsvariablen konfiguriert. Siehe Konfiguration.

WARNING

Anfragen an geschützte Endpunkte ohne gültigen Token erhalten eine 401 Unauthorized-Antwort.

Antwortformat

Alle JSON-Antworten folgen einer einheitlichen Struktur:

Erfolg:

json
{
  "ok": true,
  "data": { ... }
}

Fehler:

json
{
  "ok": false,
  "error": {
    "code": "BAD_REQUEST",
    "message": "variant_id is required"
  }
}

Fehlercodes

CodeHTTP-StatusBeschreibung
BAD_REQUEST400Ungültige Anfrageparameter
UNAUTHORIZED401Fehlender oder ungültiger Auth-Token
FORBIDDEN403Token hat nicht den erforderlichen Scope
NOT_FOUND404Ressource nicht gefunden
INTERNAL_ERROR500Server-Fehler

Endpunkt-Übersicht

Öffentliche Endpunkte (Keine Auth)

MethodePfadBeschreibung
GET/products/:slugProdukt-Download-Seite (HTML)
GET/d/:releaseIDDirekter Datei-Download
GET/ios/:releaseID/manifest.plistiOS OTA-Manifest
GET/udid/profile.mobileconfig?variant=:idUDID-Bindungsprofil
POST/udid/callbackUDID-Callback (von iOS)
GET/udid/status?variant=:idUDID-Bindungsstatus
GET/healthzIntegritätsprüfung

Upload-Endpunkte (Upload-Token)

MethodePfadBeschreibung
POST/uploadBuild-Datei hochladen

Admin-Endpunkte (Admin-Token)

MethodePfadBeschreibung
POST/admin/api/smart-uploadIntelligenter Upload mit automatischer Erkennung
GET/admin/api/productsProdukte auflisten
POST/admin/api/productsProdukt erstellen
GET/admin/api/products/:idProdukt mit Varianten abrufen
PUT/admin/api/products/:idProdukt aktualisieren
DELETE/admin/api/products/:idProdukt löschen
POST/admin/api/products/:id/variantsVariante erstellen
PUT/admin/api/variants/:idVariante aktualisieren
DELETE/admin/api/variants/:idVariante löschen
GET/admin/api/variants/:id/statsVarianten-Statistiken
DELETE/admin/api/releases/:idRelease löschen
PUT/admin/api/apps/:id/publishApp veröffentlichen
PUT/admin/api/apps/:id/unpublishApp unveröffentlichen
GET/admin/api/eventsEvents abfragen
GET/admin/api/ios_devicesiOS-Geräte auflisten
POST/admin/api/devices/:id/register-appleGerät bei Apple registrieren
POST/admin/api/devices/register-appleGeräte stapelweise registrieren
GET/admin/api/settingsEinstellungen abrufen
PUT/admin/api/settingsEinstellungen aktualisieren
GET/admin/api/upload-configUpload-Konfiguration abrufen
GET/admin/api/apple/statusApple API-Status
GET/admin/api/apple/devicesApple-registrierte Geräte

Export-Endpunkte (Admin-Token)

MethodePfadBeschreibung
GET/admin/exports/releases.csvReleases exportieren
GET/admin/exports/events.csvEvents exportieren
GET/admin/exports/ios_devices.csviOS-Geräte exportieren

ID-Format

Alle Ressourcen-IDs verwenden ein Präfix + zufälliger String-Format:

PräfixRessource
prd_Produkt
var_Variante
rel_Release
app_App (Legacy)

Detaillierte Referenzen

  • Upload-API -- Upload-Endpunkt mit Feldreferenz und Beispielen
  • Admin-API -- Vollständige Admin-Endpunkt-Dokumentation

Released under the Apache-2.0 License.