Resim Barındırma API: Tek POST İsteğiyle Resim Yükleyin
MyIMGs.org resim barındırma API'si, tek istekte resmi yükler ve doğrudan bağlantıyı döndürür. API anahtarınızla bir dosya veya base64 resim gönderin, uygulamalar, web siteleri ve forumlar için hazır JSON alın. Her resim HTTPS üzerinden bir CDN'den sunulur. API erişimi her Pro paketine dahildir, aylık $3.29 fiyatından başlar.
Resim barındırma API anahtarı nasıl alınır
- Ücretsiz bir MyIMGs.org hesabı oluşturun ve e-postanızı doğrulayın.
- Pro paketleri ve fiyatlar sayfasından bir paket seçin. API erişimi her Pro paketine dahildir.
- Hesap sayfanızı açın ve API anahtarı oluştur seçeneğini seçin.
- Anahtarı kopyalayın. Yalnızca bir kez gösterilir. Kaybederseniz yeni bir anahtar oluşturun, eskisi çalışmaz.
curl ile resim yükleme (hızlı başlangıç)
YOUR_API_KEY yerine kendi anahtarınızı yazın ve çalıştırın:
curl -X POST https://myimgs.org/api/v1/upload \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "image=@photo.jpg"
Yanıt JSON biçimindedir. Doğrudan resim bağlantısı için data.url, resmi gösteren sayfa için data.viewer_url alanını kullanın:
{
"success": true,
"status": 201,
"data": {
"id": "AbC12xyz",
"title": "photo",
"name": "photo",
"extension": "jpg",
"size": 245891,
"optimized": false,
"url": "https://myimgs.org/storage/images/61178/photo.jpg",
"viewer_url": "https://myimgs.org/image/AbC12xyz",
"url_viewer": "https://myimgs.org/image/AbC12xyz",
"display_url": "https://myimgs.org/storage/images/61178/photo.jpg",
"width": 1600,
"height": 1067,
"time": 1762000000,
"expiration": 0,
"image": {
"filename": "photo.jpg",
"name": "photo",
"mime": "image/jpeg",
"extension": "jpg",
"url": "https://myimgs.org/storage/images/61178/photo.jpg"
}
}
}
Resim yükleme API başvurusu
Tek uç nokta: POST https://myimgs.org/api/v1/upload
Kimlik doğrulama
Anahtarınızı Authorization: Bearer YOUR_API_KEY başlığında gönderin. ImgBB için yazılmış betiklerde key form alanı da çalışır. Form alanları sunucu günlüklerine düşebileceği için mümkünse başlığı kullanın.
İstek alanları
| Alan | Zorunlu | Açıklama |
|---|---|---|
image | Evet | Resim dosyası (multipart form verisi) veya bir base64 metni. data:image/png;base64,... gibi bir data URI da kabul edilir. |
name | Hayır | Kaydedilen resmin dosya adı. Yalnızca harfler, rakamlar, kısa çizgi ve alt çizgi korunur. Varsayılan olarak yüklenen dosyanın adıdır. |
optimize | Hayır | Dosya küçülüyorsa JPG, PNG ve WebP resimleri sıkıştırılmış WebP'ye dönüştürmek için 1 veya true gönderin. GIF'ler hiçbir zaman dönüştürülmez. Yanıt, son dosyayı data.extension ve data.url alanlarında gösterir. |
key | Hayır | Authorization başlığını kullanmıyorsanız API anahtarınız. |
Yanıt alanları
| Alan | Açıklama |
|---|---|
success | Resim kaydedildiğinde true. |
data.id | Resmin kısa kimliği. |
data.name | Uzantısız, kaydedilen dosya adı. |
data.extension | Gerçek dosya içeriğinden alınan jpg, png, gif veya webp. |
data.size | Kaydedilen boyut, bayt cinsinden. |
data.optimized | optimize gönderdiğiniz için resim WebP'ye dönüştürüldüyse true, aksi halde false. |
data.url | Doğrudan resim bağlantısı. <img> etiketlerinde, BBCode'da ve uygulamalarda kullanın. |
data.viewer_url | Resmi gösteren sayfanın bağlantısı. data.url_viewer aynı bağlantıyı içerir. |
data.title | data.name ile aynı. |
data.display_url | data.url ile aynı. |
data.width, data.height | Resim boyutu, piksel cinsinden. |
data.time | Yükleme zamanı, Unix zaman damgası olarak. |
data.expiration | Her zaman 0: resimlerin süresi dolmaz. |
data.image | Kaydedilen dosya: filename, name, mime, extension ve url. |
status | HTTP durum kodu, resim kaydedildiğinde 201. |
JavaScript, Python ve PHP ile resim yükleme API örnekleri
JavaScript (Node.js 18 veya üzeri)
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://myimgs.org/api/v1/upload", {
method: "POST",
headers: { Authorization: "Bearer YOUR_API_KEY" },
body: form,
});
const json = await res.json();
console.log(json.data.url);
Python (requests)
import requests
r = requests.post(
"https://myimgs.org/api/v1/upload",
headers={"Authorization": "Bearer YOUR_API_KEY"},
files={"image": open("photo.jpg", "rb")},
)
print(r.json()["data"]["url"])
PHP (cURL)
$ch = curl_init("https://myimgs.org/api/v1/upload");
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ["Authorization: Bearer YOUR_API_KEY"],
CURLOPT_POSTFIELDS => ["image" => new CURLFile("photo.jpg")],
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
echo $data["data"]["url"];
Base64 resim yükleme
Resim yalnızca bellekte bulunuyorsa işe yarar, örneğin bir canvas veya ekran görüntüsü:
curl -X POST https://myimgs.org/api/v1/upload \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "image=$(base64 -w0 photo.jpg)" \
-F "name=photo"
Büyük fotoğraflar küçüldüklerinde daha hızlı yüklenir. Göndermeden önce ücretsiz resim sıkıştırma aracıyla resimleri tarayıcınızda sıkıştırabilirsiniz.
Resim barındırma API hataları ve durum kodları
Hatalar, {"success": false, "error": "message"} gibi bir JSON ile şu durum kodlarından biriyle döner:
| Durum | Anlamı |
|---|---|
| 201 | Resim kaydedildi. Yanıt bağlantıları içerir. |
| 401 | API anahtarı eksik veya yanlış. |
| 403 | Hesabın etkin bir Pro paketi yok veya hesap devre dışı. |
| 413 | Resim 96 MB'tan büyük. |
| 422 | Resim gönderilmedi, base64 metni geçersiz veya dosya bir JPG, PNG, GIF ya da WebP resmi değil. |
| 429 | Bir dakikada 60'tan fazla istek. Bekleyip tekrar deneyin. |
Resim barındırma API sınırları
| Resim boyutu | Resim başına 96 MB |
|---|---|
| Biçimler | JPG, PNG, GIF (animasyon korunur) ve WebP |
| İstek sınırı | Her hesap için dakikada 60 istek |
| Depolama alanı | Pro paketlerinde Sınırsız depolama |
| Sunum | HTTPS üzerinden CDN, doğrudan bağlantılar forumlarda, web sitelerinde ve uygulamalarda çalışır |
| Girdi | Dosya yükleme veya base64 |
ImgBB API alternatifi
ImgBB API ile zaten yükleme yapıyorsanız geçiş için iki değişiklik yeterli: isteği https://myimgs.org/api/v1/upload adresine yönlendirin ve MyIMGs.org anahtarınızı kullanın. key ve image alanları aynı şekilde çalışır, doğrudan bağlantı data.url içinde döner. Yanıt ayrıca url_viewer, display_url, title, width, height, time, expiration ve image için ImgBB'nin adlarını kullanır. thumb, medium veya delete_url yoktur; bir URL'den resim çekmez ve son kullanma ayarı almaz. Pro paketleri 96 MB'a kadar resimler, reklamsız kullanım ve sınırsız depolama sunar.
Resim barındırma API fiyatları
API her Pro paketine dahildir. Size uygun faturalama dönemini seçin:
Aylık Paket
$11.49 aylık
Yıllık Paket
$6.49 aylık
$77.88 faturalanır
3 Yıllık Paket
$3.29 aylık
$118.44 faturalanır
Pro paketlerini görün ve API anahtarınızı alın
Resim barındırma API hakkında sık sorulan sorular
Ücretsiz bir resim barındırma API'si var mı?
API ile yükleme için Pro paketi gerekir, aylık $3.29 fiyatından başlar. Ücretsiz hesap web sitesinden en fazla 20 resim barındırır ve API anahtarı yoktur.
API için en büyük resim boyutu nedir?
Resim başına 96 MB. Daha büyük dosyalar 413 hatası alır.
Resim yükleme API'si hangi resim biçimlerini kabul eder?
JPG, PNG, GIF ve WebP. Biçim dosyanın kendisinden okunur; uzantısı yanlış olan bir dosya da gerçek içeriğine göre kontrol edilir ve gerçek bir resim olmayan her şey reddedilir. Animasyonlu GIF'ler animasyonlu kalır.
Bir URL'den resim yükleyebilir miyim?
Hayır. Dosyayı multipart form verisi olarak veya resmi base64 metni olarak gönderin. URL çekme özelliği güvenlik için bilerek dışarıda bırakıldı.
API ile resim silebilir miyim?
Henüz değil. Şimdilik tek API çağrısı yüklemedir. Resimleri kontrol panelinizden silin.
API anahtarımı nasıl değiştirir veya iptal ederim?
Hesap sayfanızda Yeni anahtar oluştur seçeneğini kullanın. Eski anahtar hemen çalışmayı bırakır, yeni anahtar bir kez gösterilir.
API istek sınırı nedir?
Her hesap için dakikada 60 istek. Bunun üzerinde API, dakika bitene kadar 429 durumuyla yanıt verir.
API ile yüklenen resimlerin süresi dolar mı?
Hayır. Son kullanma ayarı yoktur. Anahtarınızla yüklenen resimler hesabınızda kalır.
API, ImgBB için yazılmış betiklerle çalışır mı?
Yükleme çağrısı için evet. Aynı key ve image alanlarını MyIMGs.org adresine gönderin. Yanıt; url, url_viewer, display_url, title, width, height, time, expiration ve image için aynı adları kullanır. thumb, medium veya delete_url yoktur; resim URL'si ya da son kullanma ayarı almaz.
MyIMGs.org ücretsiz bir resim barındırma hizmetidir. Hesap açmadan ana sayfadan resim yükleyin.