Geliştiriciler · ücretsiz API
Ücretsiz görsel barındırma API’si
Uygulamalarınızdan, botlarınızdan ve betiklerinizden görsel yükleyin. Tek bir istek doğrudan bağlantı, HTML, BBCode ve Markdown döndürür.
API anahtarı alınKimlik Doğrulama
Panel → Ayarlar → API Anahtarları bölümünden bir anahtar oluşturun. Anahtarı her istekle birlikte gönderin:
Authorization: Bearer YOUR_API_KEYAnahtarları sunucunuzda saklayın. Anahtara sahip olan herkes hesabınıza görsel yükleyebilir ve hesabınızdan görsel silebilir.
Görsel yükleme
POST /api/v1/upload
| Alan | Açıklama |
|---|---|
| image | Görsel dosyası (multipart), en fazla 4 MB |
| url | Bunun yerine alınacak herkese açık görsel URL’si, en fazla 32 MB |
| name | İsteğe bağlı başlık; görsel sayfasında kullanılır |
| expiresIn | İsteğe bağlı otomatik silme: 1h (1 saat), 1d (1 gün), 1w (1 hafta), 1m (1 ay), 6m (6 ay) |
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"])Yanıt (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
}
}Görsel alma veya silme
Anahtarın ait olduğu hesaba ait görsellerde çalışır. GET ayrıca created_at ve views değerlerini de döndürür.
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"Sınırlar ve hatalar
Her anahtar saatte 100 görsel yükleyebilir ve saatte 1.000 başka istek yapabilir. Her yanıt X-RateLimit-Limit, X-RateLimit-Remaining ve X-RateLimit-Reset başlıklarını içerir. Hatalar {"success": false, "error": "..."} biçiminde döner.
| Durum | Anlamı |
|---|---|
| 400 | Görsel eksik, dosya desteklenmiyor, dosya çok büyük veya URL alınamıyor |
| 401 | API anahtarı eksik, bilinmiyor veya iptal edilmiş |
| 404 | Görsel bulunamadı veya anahtarınızın hesabına ait değil |
| 429 | Hız sınırına ulaşıldı; X-RateLimit-Reset başlığına bakın |
| 500 | Bizim tarafımızda bir sorun oluştu; daha sonra tekrar deneyin |
Kod gerekmez
- Forum yükleme eklentisi, phpBB, MyBB, SMF ve XenForo’ya bir yükleme düğmesi ekler.
- ShareX yapılandırması, Windows’ta her ekran görüntüsünü otomatik olarak yükler.
API soruları
ImgShareHub API’si ücretsiz mi?
Evet. Hesap ayarlarınızdan en fazla 5 anahtar oluşturabilirsiniz. Her anahtar saatte 100 görsel yükleyebilir.
Maksimum dosya boyutu nedir?
İstekte doğrudan gönderilen dosyalar en fazla 4 MB olabilir. 32 MB’a kadar daha büyük görseller için herkese açık bir görsel URL’si gönderin, ImgShareHub görseli kendisi indirir.
API ile yüklenen görseller nerede görünür?
Anahtarın sahibi olan hesabın panelinde, web sitesinden yüklediğiniz görsellerle birlikte.
Yüklenen görsellerin süresi otomatik olarak dolabilir mi?
Evet. expiresIn alanını şu değerlerden birine ayarlayın: 1h (1 saat), 1d (1 gün), 1w (1 hafta), 1m (1 ay), 6m (6 ay). Süresi dolan görseller hemen yüklenmez hale gelir.