
Loading...

Developers.hero.subtitle
Developers.quickStart.step1.description
Developers.quickStart.step2.description
Developers.quickStart.step3.description
Developers.auth.description
Authorization: Bearer mg_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxDevelopers.endpoints.baseUrl: https://api.mangagloss.com
/v1/uploads/presignDevelopers.endpoints.presign.titleDevelopers.endpoints.presign.description
Request
{
"count": 1
}Response
{
"uploads": [
{ "key": "abc123...", "url": "https://..." }
]
}/v1/uploads/direct/:keyDevelopers.endpoints.upload.titleDevelopers.endpoints.upload.description
Request
Raw image bytes (Content-Type: image/png or image/jpeg)Response
{ "ok": true }/v1/jobsDevelopers.endpoints.createJob.titleDevelopers.endpoints.createJob.description
Request
{
"pages": ["abc123..."],
"source_lang": "JPN",
"target_lang": "ENG",
"engine": "premium"
}Response
{ "job_id": "x7k9m2..." }/v1/jobs/:idDevelopers.endpoints.getJob.titleDevelopers.endpoints.getJob.description
Response
{
"id": "x7k9m2...",
"status": "completed",
"pages": [
{
"id": "p1...",
"status": "completed",
"output_url": "https://...",
"regions": [...]
}
]
}Developers.codeExamples.description
# 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"Developers.rateLimits.description
| Developers.rateLimits.headers.status | Developers.rateLimits.headers.meaning |
|---|---|
200 | Developers.rateLimits.errors.200 |
400 | Developers.rateLimits.errors.400 |
401 | Developers.rateLimits.errors.401 |
402 | Developers.rateLimits.errors.402 |
404 | Developers.rateLimits.errors.404 |
429 | Developers.rateLimits.errors.429 |
500 | Developers.rateLimits.errors.500 |