ไทย
ไทย
Appearance
ไทย
ไทย
Appearance
อัปโหลดไฟล์แรกของคุณไปยัง IPFS ในเวลาไม่ถึงสองนาที

สมัครที่ ipfs.ninja ด้วยบัญชี Google ของคุณ API key เริ่มต้นจะถูกสร้างโดยอัตโนมัติ ไปที่หน้าโปรไฟล์ของคุณเพื่อดูและจัดการ API key ของคุณ
WARNING
หมายเหตุ: API key ไม่หมดอายุ คุณสามารถสร้างคีย์หลายตัวและเพิกถอนแต่ละตัวได้จากหน้าโปรไฟล์ของคุณ
ส่งคำขอ POST ไปยัง /upload/new พร้อมเนื้อหาของคุณ นี่คือตัวอย่างการอัปโหลดอ็อบเจกต์ JSON:
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"
}'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..."CIDv1 เป็นค่าเริ่มต้น
การอัปโหลดใหม่จะสร้าง CIDv1 รุ่นใหม่ (bafk… สำหรับเนื้อหาบล็อกเดียวขนาดเล็ก, bafy… สำหรับไฟล์และไดเรกทอรีขนาดใหญ่กว่า) ตาม IPIP-0499 CID แบบเก่า Qm… จากการอัปโหลดก่อนหน้ายังคงแก้ไขได้ทุกที่ — ทั้งสองรูปแบบใช้เป็นอินพุตได้กับทุก endpoint
API จะส่งคืน CID, ขนาดไฟล์ และ URI สำหรับการเข้าถึง:
{
"cid": "bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi",
"sizeMB": 0.001,
"uris": {
"ipfs": "ipfs://bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi",
"url": "https://ipfs.ninja/ipfs/bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi"
}
}เข้าถึงไฟล์ของคุณได้สองวิธี:
curl https://ipfs.ninja/ipfs/bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdiTIP
apex gateway ที่ https://ipfs.ninja/ipfs/<CID> ให้บริการ CID ที่อัปโหลดหรือปักหมุดโดยผู้ใช้ IPFS Ninja ใด ๆ CID ที่ไม่รู้จักสำหรับแพลตฟอร์มจะส่งคืน HTTP 410 Gone — สำหรับ CID เหล่านั้น ให้ใช้ gateway สาธารณะ (ipfs.io, dweb.link) หรือทำ POST /pin CID ไปยังบัญชีของคุณก่อน
curl https://api.ipfs.ninja/file/bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi \
-H "X-Api-Key: bws_your_api_key_here"การตอบกลับ:
{
"cid": "bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi",
"fileName": "NFT metadata",
"fileType": "json",
"sizeMB": 0.001,
"createdAt": 1711036800000,
"uris": {
"ipfs": "ipfs://bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi",
"url": "https://ipfs.ninja/ipfs/bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi"
}
}ใช้ S3 อยู่แล้วหรือ? ชี้ AWS SDK ที่มีอยู่ของคุณไปที่ https://s3.ipfs.ninja และใช้ API key ของคุณเป็นข้อมูลประจำตัว:
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" })
}));ดู ความเข้ากันได้กับ S3 สำหรับเอกสารฉบับเต็มพร้อมตัวอย่าง Python, Go และการย้ายระบบ
หากคุณไม่อยากเขียนโค้ด ipfs.ninja/upload รองรับการลากและวางสำหรับ:
/ipfs/{cid}/{subpath} สำหรับแต่ละไฟล์ย่อย.car — ตรวจจับอัตโนมัติ root CID ถูกรักษาไว้ตรงตามเดิม (ดู การนำเข้า CAR)เมื่ออัปโหลดแล้ว ไฟล์จะปรากฏบนหน้า Files ซึ่งคุณสามารถ เปลี่ยนชื่อ, ย้ายระหว่างโฟลเดอร์, รับ IPFS directory CID สำหรับทั้งโฟลเดอร์ (สแนปช็อต) และกำหนดค่า S3 CORS ต่อ bucket สำหรับการเข้าถึงด้วย SDK บนเบราว์เซอร์