Skip to content

Greita pradžia

Įkelkite savo pirmą failą į IPFS per mažiau nei dvi minutes.

Įkėlimo puslapis su vilkimo ir numetimo failų įkėlimu

1. Gaukite savo API raktą

Užsiregistruokite ipfs.ninja su savo Google paskyra. Numatytasis API raktas sukuriamas automatiškai. Eikite į savo Profilio puslapį, kad peržiūrėtumėte ir valdytumėte savo API raktus.

WARNING

Pastaba: API raktai negalioja neterminuotai. Galite sukurti kelis raktus ir atšaukti juos atskirai iš savo Profilio puslapio.

2. Įkelkite failą

Siųskite POST užklausą į /upload/new su savo turiniu. Štai JSON objekto įkėlimo pavyzdys:

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 pagal numatytuosius nustatymus

Nauji įkėlimai sukuria modernų CIDv1 (bafk… mažam vienbloko turiniui, bafy… didesniems failams ir katalogams) pagal IPIP-0499. Ankstesnių įkėlimų senesni Qm… CID vis dar išsprendžiami visur — abu formatai veikia kaip įvestis kiekviename galiniame taške.

API grąžina CID, failo dydį ir prieigos URI:

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

3. Gaukite savo failą

Pasiekite savo failą dviem būdais:

Per IPFS gateway (viešas, autentifikacija nereikalinga)

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

TIP

Apex gateway https://ipfs.ninja/ipfs/<CID> aptarnauja CID, kuriuos įkėlė ar prisegė bet kuris IPFS Ninja vartotojas. Platformai nežinomi CID grąžina HTTP 410 Gone — jiems naudokite viešą gateway (ipfs.io, dweb.link) arba pirma atlikite POST /pin CID į savo paskyrą.

Per API (grąžina failo metaduomenis)

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

Atsakymas:

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

Alternatyva: naudokite AWS SDK (S3 suderinama)

Jau naudojate S3? Nukreipkite savo esamą AWS SDK į https://s3.ipfs.ninja ir naudokite savo API raktą kaip kredencialus:

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

Žiūrėkite S3 suderinamumas pilną dokumentaciją su Python, Go ir migracijos pavyzdžiais.

Norite tiesiog spustelėti? Naudokite prietaisų skydelį

Jei nenorite rašyti kodo, ipfs.ninja/upload priima vilkimą ir numetimą (drag-and-drop):

  • Bet koks failas — numeskite jį įkėlimo zonoje, jis prisegamas ir gaunate CID
  • Aplankas — supakuojamas į UnixFS katalogą jūsų naršyklėje, įkeliamas kaip vienas importas, išsprendžiamas per /ipfs/{cid}/{subpath} kiekvienam vaikiniam failui
  • .car archyvas — automatiškai aptinkamas, šaknies CID išsaugomas tiksliai (žr. CAR importas)

Įkėlus failai atsiranda Failų puslapyje, kur galite juos pervadinti, perkelti tarp aplankų, gauti IPFS katalogo CID visam aplankui (momentinė nuotrauka) ir sukonfigūruoti per-bucket S3 CORS naršyklės SDK prieigai.

Kiti žingsniai

  • API nuoroda — Pilna dokumentacija visiems galiniams taškams, parametrams ir klaidų kodams.
  • S3 suderinamumas — Naudokite AWS SDK sąveikai su IPFS Ninja.
  • Dedikuoti gateway — Gaukite privatų gateway, kuris aptarnauja tik jūsų failus.