Skip to content

Hızlı Başlangıç

İlk dosyanızı iki dakikadan kısa sürede IPFS'e yükleyin.

Sürükle-bırak dosya yükleme özellikli yükleme sayfası

1. API anahtarınızı alın

ipfs.ninja adresinde Google hesabınızla kaydolun. Varsayılan bir API anahtarı otomatik olarak oluşturulur. API anahtarlarınızı görüntülemek ve yönetmek için Profil sayfanıza gidin.

WARNING

Not: API anahtarlarının süresi dolmaz. Birden fazla anahtar oluşturabilir ve bunları Profil sayfanızdan tek tek iptal edebilirsiniz.

2. Dosya yükleyin

İçeriğinizle /upload/new adresine bir POST isteği gönderin. İşte bir JSON nesnesi yükleme örneği:

curl

bash
curl -X POST https://api.ipfs.ninja/upload/new \
  -H "X-Api-Key: bws_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "content": {
      "name": "My NFT",
      "description": "A permanent file on IPFS",
      "image": "ipfs://bafybeiExampleCID..."
    },
    "description": "NFT metadata"
  }'

JavaScript

javascript
const response = await fetch("https://api.ipfs.ninja/upload/new", {
  method: "POST",
  headers: {
    "X-Api-Key": "bws_your_api_key_here",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    content: {
      name: "My NFT",
      description: "A permanent file on IPFS",
      image: "ipfs://bafybeiExampleCID..."
    },
    description: "NFT metadata"
  })
});

const data = await response.json();
console.log(data.cid);       // "bafybeigdyrzt5..."
console.log(data.uris.url);  // "https://ipfs.ninja/ipfs/bafybeigdyrzt5..."

Varsayılan olarak CIDv1

Yeni yüklemeler, IPIP-0499'a uygun modern CIDv1 (bafk… küçük tek bloklu içerik için, bafy… daha büyük dosyalar ve dizinler için) üretir. Önceki yüklemelerden gelen eski Qm… CID'leri hâlâ her yerde çözümlenir — her iki biçim de her uç nokta için girdi olarak çalışır.

API, CID'yi, dosya boyutunu ve erişim URI'lerini döndürür:

json
{
  "cid": "bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi",
  "sizeMB": 0.001,
  "uris": {
    "ipfs": "ipfs://bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi",
    "url": "https://ipfs.ninja/ipfs/bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi"
  }
}

3. Dosyanızı alın

Dosyanıza iki yolla erişebilirsiniz:

IPFS gateway üzerinden (kimlik doğrulama gerekmez)

bash
curl https://ipfs.ninja/ipfs/bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi

TIP

Apex ağ geçidi https://ipfs.ninja/ipfs/<CID>, herhangi bir IPFS Ninja kullanıcısı tarafından yüklenmiş veya sabitlenmiş CID'leri sunar. Platforma bilinmeyen CID'ler HTTP 410 Gone döndürür — bunlar için genel bir ağ geçidi (ipfs.io, dweb.link) kullanın veya önce CID'yi hesabınıza POST /pin yapın.

API üzerinden (dosya meta verilerini döndürür)

bash
curl https://api.ipfs.ninja/file/bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi \
  -H "X-Api-Key: bws_your_api_key_here"

Yanıt:

json
{
  "cid": "bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi",
  "fileName": "NFT metadata",
  "fileType": "json",
  "sizeMB": 0.001,
  "createdAt": 1711036800000,
  "uris": {
    "ipfs": "ipfs://bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi",
    "url": "https://ipfs.ninja/ipfs/bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi"
  }
}

Alternatif: AWS SDK'sını kullanın (S3 uyumlu)

Zaten S3 mi kullanıyorsunuz? Mevcut AWS SDK'nızı https://s3.ipfs.ninja adresine yönlendirin ve API anahtarınızı kimlik bilgisi olarak kullanın:

javascript
import { S3Client, PutObjectCommand } from "@aws-sdk/client-s3";

const s3 = new S3Client({
  endpoint: "https://s3.ipfs.ninja",
  credentials: { accessKeyId: "bws_prefix", secretAccessKey: "bws_fullkey" },
  region: "us-east-1",
  forcePathStyle: true
});

await s3.send(new PutObjectCommand({
  Bucket: "my-project",
  Key: "my-file.json",
  Body: JSON.stringify({ hello: "IPFS" })
}));

Python, Go ve geçiş örnekleriyle tam dokümantasyon için S3 Uyumluluğu bölümüne bakın.

Tıklamayı mı tercih edersiniz? Dashboard'u kullanın

Kod yazmak istemiyorsanız, ipfs.ninja/upload şunlar için sürükle-bırak kabul eder:

  • Herhangi bir dosya — yükleme alanına bırakın, sabitlenir ve CID'yi alırsınız
  • Bir klasör — tarayıcınızda bir UnixFS dizinine paketlenir, tek bir içe aktarma olarak yüklenir, her alt dosya için /ipfs/{cid}/{subpath} üzerinde çözümlenir
  • Bir .car arşivi — otomatik algılanır, kök CID tam olarak korunur (bkz. CAR İçe Aktarma)

Yüklendikten sonra, dosyalar Dosyalar sayfasında görünür; burada yeniden adlandırabilir, klasörler arasında taşıyabilir, tüm bir klasör için bir IPFS dizin CID'si alabilir (snapshot) ve tarayıcı SDK erişimi için bucket başına S3 CORS yapılandırabilirsiniz.

Sonraki adımlar

  • API Referansı — Tüm uç noktalar, parametreler ve hata kodları için tam dokümantasyon.
  • S3 Uyumluluğu — IPFS Ninja ile etkileşim kurmak için AWS SDK'sını kullanın.
  • Özel Gateway'ler — Yalnızca dosyalarınızı sunan özel bir gateway edinin.