API för bildkomprimering
Komprimera JPG, PNG, WebP och AVIF med API:t för bildkomprimering från Bitinz. Mindre bilder i ditt arbetsflöde, med en gratis månadskvot för alla konton.
Ladda ner OpenAPI-specifikationenAutentisering
Skapa en API-nyckel i översikten och använd sedan HTTP Basic-autentisering (användare api, lösenord = nyckel) eller skicka Authorization: Bearer <key>.
curl --user api:YOUR_API_KEY ... # or curl -H "Authorization: Bearer YOUR_API_KEY" ...
Komprimera en bild
Skicka bilden med POST som anropets innehåll till /api/v1/shrink. Valfria frågeparametrar: level (fast / default / best) och filename.
curl -i --user api:YOUR_API_KEY \ --data-binary @photo.jpg \ "https://bitinz.com/api/v1/shrink?level=default&filename=photo.jpg"
Svar
Lyckade anrop returnerar oftast 201 med status done. Headern Location och output.url pekar på nedladdningen. Compression-Count är din användning den här månaden.
HTTP/1.1 201 Created
Location: https://bitinz.com/api/v1/results/<id>/download
Compression-Count: 1
{
"id": "<id>",
"status": "done",
"input": { "size": 2277375, "type": "image/jpeg" },
"output": { "size": 992450, "type": "image/jpeg", "ratio": 0.436,
"url": "https://bitinz.com/api/v1/results/<id>/download" },
"unchanged": false,
"expiresAt": "2026-10-02T12:00:00Z"
}Mottaget och väntar: 202
Vid längre kö kan 202 Accepted med status pending returneras. Location pekar på jobbets status, inte på nedladdningen. Spara URL:en och polla den i stället för att skicka bilden igen.
HTTP/1.1 202 Accepted
Location: https://bitinz.com/api/v1/results/<id>
{
"id": "<id>",
"status": "pending",
"input": { "size": 2277375 },
"expiresAt": "2026-10-02T12:00:00Z"
}Polla jobbets status
Skicka GET /api/v1/results/{id} till URL:en från Location var 1–2 sekund. pending betyder i kö (queuePosition anger aktuell plats); processing betyder att komprimering pågår. När status är done laddar du ner från downloadUrl. failed betyder att jobbet inte kunde slutföras; failure anger kategorin och note förklarar varför.
curl "https://bitinz.com/api/v1/results/<id>"
{
"id": "<id>",
"status": "done",
"available": true,
"downloadUrl": "/api/v1/results/<id>/download",
"outputSize": 992450,
"unchanged": false
}Ladda ner resultatet
Resultat kan laddas ner tills de löper ut; därefter returnerar URL:en 410.
curl -o photo.min.jpg "https://bitinz.com/api/v1/results/<id>/download"
Felkoder
{ "error": { "code": "...", "message": "..." } }
| 401 unauthorized / invalid_key | Nyckel saknas, är okänd eller återkallad |
| 413 too_large | Bilden överskrider storleksgränsen |
| 415 unsupported_image | Synkron väg: ingen PNG-, JPEG-, WebP- eller AVIF-bild som stöds |
| 422 image_too_large | Synkron väg: bilden har fler pixlar än tjänsten kan bearbeta |
| failed / unsupported | Köade jobb rapporterar bilder som inte stöds i resultatet som status: failed och failure: unsupported |
| failed / too_large | Köade jobb rapporterar bilder över bearbetningsgränsen som status: failed och failure: too_large |
| 429 quota_exceeded | Månadskvoten är slut |
| 503 busy | Servern är upptagen, försök igen strax |