REST API

API-Dokumentation

Integriere Manga-Übersetzung in deine App mit einer einfachen REST API.

Schnellstart

1

Hol dir einen API-Schlüssel

Erstelle einen Schlüssel in deinen Dashboard-Einstellungen. Schlüssel beginnen mit mg_live_ oder mg_test_.

2

Lade ein Bild hoch

Fordere eine vorsignierte URL an und lade dann die Bilddaten per PUT darauf hoch.

3

Erstelle einen Auftrag

Sende den Upload-Schlüssel, um die Übersetzung zu starten. Frage den Auftragsstatus ab, bis er abgeschlossen ist.

Authentifizierung

Füge deinen API-Schlüssel als Bearer-Token im Authorization-Header hinzu.

Authorization: Bearer mg_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  • Live-Modus-Schlüssel (mg_live_) verwenden deine echten Credits.
  • Test-Modus-Schlüssel (mg_test_) verwenden mock GPU – keine Credits verbraucht.

Endpunkt-Referenz

Basis-URL: https://api.mangagloss.com

POST/v1/uploads/presignVorsignierte Upload-URL abrufen

Gibt eine vorsignierte URL zum Hochladen eines Bildes in den R2-Speicher zurück.

Request

{
  "count": 1
}

Response

{
  "uploads": [
    { "key": "abc123...", "url": "https://..." }
  ]
}
PUT/v1/uploads/direct/:keyBild hochladen

Lade rohe Bilddaten zur vorsignierten URL hoch. Sende den Bild-Content-Type im Header.

Request

Raw image bytes (Content-Type: image/png or image/jpeg)

Response

{ "ok": true }
POST/v1/jobsÜbersetzungsauftrag erstellen

Starte einen Übersetzungsauftrag für hochgeladene Bilder. Erfordert Credits (1 pro Seite).

Request

{
  "pages": ["abc123..."],
  "source_lang": "JPN",
  "target_lang": "ENG",
  "engine": "premium"
}

Response

{ "job_id": "x7k9m2..." }
GET/v1/jobs/:idAuftragsstatus abrufen

Frage diesen Endpunkt ab, bis der Status completed oder failed ist. Ergebnisse enthalten übersetzte Bild-URLs und Textregionen.

Response

{
  "id": "x7k9m2...",
  "status": "completed",
  "pages": [
    {
      "id": "p1...",
      "status": "completed",
      "output_url": "https://...",
      "regions": [...]
    }
  ]
}

Code-Beispiele

Vollständiger Workflow zum Übersetzen einer einzelnen Seite in deiner bevorzugten Programmiersprache.

# 1. Get a presigned upload URL
PRESIGN=$(curl -s -X POST https://api.mangagloss.com/v1/uploads/presign \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"count": 1}')

KEY=$(echo $PRESIGN | jq -r '.uploads[0].key')
URL=$(echo $PRESIGN | jq -r '.uploads[0].url')

# 2. Upload the image
curl -s -X PUT "$URL" \
  -H "Content-Type: image/png" \
  --data-binary @page.png

# 3. Create a translation job
JOB=$(curl -s -X POST https://api.mangagloss.com/v1/jobs \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{\"pages\": [\"$KEY\"], \"source_lang\": \"JPN\", \"target_lang\": \"ENG\", \"engine\": \"premium\"}")

JOB_ID=$(echo $JOB | jq -r '.job_id')

# 4. Poll until complete
curl -s https://api.mangagloss.com/v1/jobs/$JOB_ID \
  -H "Authorization: Bearer YOUR_API_KEY"

Ratenbegrenzungen & Fehler

API-Schlüssel sind auf 30 Anfragen pro Minute begrenzt. Credits sind die eigentliche Beschränkung.

StatusBedeutung
200Erfolgreich
400Ungültige Anfrage – überprüfe deine Parameter
401Nicht autorisiert – fehlender oder ungültiger API-Schlüssel
402Unzureichende Credits
404Ressource nicht gefunden
429Ratenbegrenzung – warten und erneut versuchen
500Serverfehler – mit Backoff erneut versuchen

Bereit zur Integration?

Erstelle einen API-Schlüssel und beginne, Manga programmatisch zu übersetzen.

API-Schlüssel erstellen
API Documentation -- MangaGloss REST API | MangaGloss