Entwickler · kostenlose API
Kostenlose Bild-Hosting-API
Laden Sie Bilder aus Ihren Apps, Bots und Skripten hoch. Eine einzige Anfrage liefert Direktlink, HTML, BBCode und Markdown.
API-Schlüssel erhaltenAuthentifizierung
Erstellen Sie einen Schlüssel unter Dashboard → Einstellungen → API-Schlüssel. Senden Sie ihn mit jeder Anfrage:
Authorization: Bearer YOUR_API_KEYBewahren Sie Schlüssel nur auf Ihrem Server auf. Jeder mit einem Schlüssel kann in Ihr Konto hochladen und daraus löschen.
Bild hochladen
POST /api/v1/upload
| Feld | Beschreibung |
|---|---|
| image | Bilddatei (multipart), bis 4 MB |
| url | Stattdessen abzurufende öffentliche Bild-URL, bis 32 MB |
| name | Optionaler Titel für die Bildseite |
| expiresIn | Optionales automatisches Löschen: 1h (1 Stunde), 1d (1 Tag), 1w (1 Woche), 1m (1 Monat), 6m (6 Monate) |
curl -X POST https://imgsharehub.com/api/v1/upload \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "[email protected]" \
-F "name=Login error"curl -X POST https://imgsharehub.com/api/v1/upload \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/photo.jpg", "expiresIn": "1w"}'import { readFile } from "node:fs/promises";
const form = new FormData();
form.append("image", new Blob([await readFile("photo.jpg")]), "photo.jpg");
const res = await fetch("https://imgsharehub.com/api/v1/upload", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.IMGSHAREHUB_KEY}` },
body: form,
});
const { data } = await res.json();
console.log(data.direct_url);import os, requests
res = requests.post(
"https://imgsharehub.com/api/v1/upload",
headers={"Authorization": f"Bearer {os.environ['IMGSHAREHUB_KEY']}"},
files={"image": open("photo.jpg", "rb")},
)
print(res.json()["data"]["direct_url"])Antwort (201)
{
"success": true,
"data": {
"id": "a1b2c3",
"url": "https://imgsharehub.com/a1b2c3",
"direct_url": "https://imgsharehub.com/i/a1b2c3.webp",
"html": "<a href=\"https://imgsharehub.com/a1b2c3\" target=\"_blank\"><img src=\"https://imgsharehub.com/i/a1b2c3.webp\" alt=\"Image hosted on ImgShareHub\" /></a>",
"bbcode": "[url=https://imgsharehub.com/a1b2c3][img]https://imgsharehub.com/i/a1b2c3.webp[/img][/url]",
"markdown": "[](https://imgsharehub.com/a1b2c3)",
"width": 1920,
"height": 1080,
"size": 284512,
"private": false,
"expires_at": null
}
}Bild abrufen oder löschen
Funktioniert für Bilder des Kontos, zu dem der Schlüssel gehört. GET liefert zusätzlich created_at und views.
curl https://imgsharehub.com/api/v1/images/a1b2c3 \
-H "Authorization: Bearer YOUR_API_KEY"curl -X DELETE https://imgsharehub.com/api/v1/images/a1b2c3 \
-H "Authorization: Bearer YOUR_API_KEY"Limits und Fehler
Jeder Schlüssel kann 100 Bilder pro Stunde hochladen und 1.000 weitere Anfragen pro Stunde stellen. Jede Antwort enthält die Header X-RateLimit-Limit, X-RateLimit-Remaining und X-RateLimit-Reset. Fehler liefern {"success": false, "error": "..."}.
| Status | Bedeutung |
|---|---|
| 400 | Bild fehlt, Datei nicht unterstützt, Datei zu groß oder URL nicht abrufbar |
| 401 | API-Schlüssel fehlt, ist unbekannt oder wurde widerrufen |
| 404 | Bild nicht gefunden oder gehört nicht zum Konto Ihres Schlüssels |
| 429 | Ratenlimit erreicht; siehe Header X-RateLimit-Reset |
| 500 | Fehler auf unserer Seite; versuchen Sie es später erneut |
Ganz ohne Code
- Das Upload-Plugin für Foren fügt phpBB, MyBB, SMF und XenForo einen Upload-Button hinzu.
- Die ShareX-Konfiguration lädt unter Windows jeden Screenshot automatisch hoch.
Fragen zur API
Ist die ImgShareHub-API kostenlos?
Ja. Erstellen Sie in Ihren Kontoeinstellungen bis zu 5 Schlüssel. Jeder Schlüssel kann 100 Bilder pro Stunde hochladen.
Wie groß darf eine Datei maximal sein?
Direkt in der Anfrage gesendete Dateien dürfen bis zu 4 MB groß sein. Für größere Bilder bis 32 MB senden Sie eine öffentliche Bild-URL, die ImgShareHub dann herunterlädt.
Wo erscheinen über die API hochgeladene Bilder?
Im Dashboard des Kontos, dem der Schlüssel gehört – zusammen mit den Bildern, die Sie auf der Website hochladen.
Können hochgeladene Bilder automatisch ablaufen?
Ja. Setzen Sie expiresIn auf einen der Werte: 1h (1 Stunde), 1d (1 Tag), 1w (1 Woche), 1m (1 Monat), 6m (6 Monate). Abgelaufene Bilder werden sofort nicht mehr geladen.