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ın

Kimlik Doğrulama

Panel → Ayarlar → API Anahtarları bölümünden bir anahtar oluşturun. Anahtarı her istekle birlikte gönderin:

Başlık
Authorization: Bearer YOUR_API_KEY

Anahtarları 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

AlanAçıklama
imageGörsel dosyası (multipart), en fazla 4 MB
urlBunun 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: dosya yükleme
curl -X POST https://imgsharehub.com/api/v1/upload \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "[email protected]" \
  -F "name=Login error"
curl: URL’den yükleme
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"}'
Node.js
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);
Python
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)

JSON
{
  "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": "[![Image](https://imgsharehub.com/i/a1b2c3.webp)](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.

Alma
curl https://imgsharehub.com/api/v1/images/a1b2c3 \
  -H "Authorization: Bearer YOUR_API_KEY"
Silme
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.

DurumAnlamı
400Görsel eksik, dosya desteklenmiyor, dosya çok büyük veya URL alınamıyor
401API anahtarı eksik, bilinmiyor veya iptal edilmiş
404Görsel bulunamadı veya anahtarınızın hesabına ait değil
429Hız sınırına ulaşıldı; X-RateLimit-Reset başlığına bakın
500Bizim tarafımızda bir sorun oluştu; daha sonra tekrar deneyin

Kod gerekmez

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.