Skip to content

Γρήγορη Εκκίνηση

Ανεβάστε το πρώτο σας αρχείο στο IPFS σε λιγότερο από δύο λεπτά.

Σελίδα ανεβάσματος με μεταφορά-απόθεση αρχείων (drag-and-drop)

1. Αποκτήστε το API key σας

Εγγραφείτε στο ipfs.ninja με τον λογαριασμό σας Google. Ένα προεπιλεγμένο API key δημιουργείται αυτόματα. Μεταβείτε στη σελίδα προφίλ για να δείτε και να διαχειριστείτε τα API keys σας.

WARNING

Σημείωση: Τα API keys δεν λήγουν. Μπορείτε να δημιουργήσετε πολλαπλά κλειδιά και να τα ανακαλέσετε μεμονωμένα από τη σελίδα προφίλ σας.

2. Ανεβάστε ένα αρχείο

Στείλτε ένα αίτημα POST στο /upload/new με το περιεχόμενό σας. Ακολουθεί ένα παράδειγμα ανεβάσματος ενός αντικειμένου JSON:

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..."

CIDv1 από προεπιλογή

Τα νέα uploads παράγουν σύγχρονα CIDv1 (bafk… για μικρό περιεχόμενο ενός block, bafy… για μεγαλύτερα αρχεία και καταλόγους) σύμφωνα με το IPIP-0499. Τα παλαιότερα CID Qm… από προηγούμενα uploads εξακολουθούν να επιλύονται παντού — και οι δύο μορφές λειτουργούν ως είσοδοι σε κάθε endpoint.

Το API επιστρέφει το CID, το μέγεθος αρχείου και τα URI πρόσβασης:

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

3. Ανακτήστε το αρχείο σας

Αποκτήστε πρόσβαση στο αρχείο σας με δύο τρόπους:

Μέσω του IPFS gateway (χωρίς απαιτούμενη αυθεντικοποίηση)

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

TIP

Το apex gateway https://ipfs.ninja/ipfs/<CID> εξυπηρετεί CID που έχουν ανέβει ή καρφιτσωθεί από οποιονδήποτε χρήστη του IPFS Ninja. Τα CID που είναι άγνωστα στην πλατφόρμα επιστρέφουν HTTP 410 Gone — σε αυτή την περίπτωση, χρησιμοποιήστε ένα δημόσιο gateway (ipfs.io, dweb.link) ή κάντε POST /pin για το CID στον λογαριασμό σας πρώτα.

Μέσω του API (επιστρέφει μεταδεδομένα αρχείου)

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

Απάντηση:

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

Εναλλακτικά: Χρησιμοποιήστε το AWS SDK (συμβατό με S3)

Χρησιμοποιείτε ήδη το S3; Κατευθύνετε το υπάρχον AWS SDK σας στο https://s3.ipfs.ninja και χρησιμοποιήστε το API key σας ως credentials:

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" })
}));

Δείτε το S3 Compatibility για πλήρη τεκμηρίωση με παραδείγματα σε Python και Go, καθώς και παραδείγματα μετάβασης (migration).

Προτιμάτε τα κλικ; Χρησιμοποιήστε το Dashboard

Αν προτιμάτε να μη γράψετε κώδικα, το ipfs.ninja/upload δέχεται μεταφορά-και-απόθεση (drag-and-drop) για:

  • Οποιοδήποτε αρχείο — αποθέστε το στη ζώνη ανεβάσματος, καρφιτσώνεται + λαμβάνετε το CID
  • Έναν φάκελο — συσκευάζεται σε έναν κατάλογο UnixFS μέσα στο πρόγραμμα περιήγησής σας, ανεβαίνει ως ένα ενιαίο import και επιλύεται στο /ipfs/{cid}/{subpath} για κάθε θυγατρικό αρχείο
  • Ένα αρχείο .car — εντοπίζεται αυτόματα, το root CID διατηρείται ακριβώς όπως είναι (δείτε CAR Import)

Μόλις ανέβουν, τα αρχεία εμφανίζονται στη σελίδα Files όπου μπορείτε να τα μετονομάσετε, να τα μετακινήσετε μεταξύ φακέλων, να λάβετε ένα IPFS directory CID για έναν ολόκληρο φάκελο (snapshot), και να διαμορφώσετε ανά-bucket S3 CORS για πρόσβαση μέσω browser SDK.

Επόμενα βήματα

  • API Reference — Πλήρης τεκμηρίωση για όλα τα endpoints, τις παραμέτρους και τους κωδικούς σφαλμάτων.
  • S3 Compatibility — Χρησιμοποιήστε το AWS SDK για να αλληλεπιδράσετε με το IPFS Ninja.
  • Dedicated Gateways — Αποκτήστε ένα ιδιωτικό gateway που εξυπηρετεί μόνο τα αρχεία σας.