Skip to content

Fitxers

Pugeu, llisteu i recupereu fitxers a IPFS.

Files page showing uploaded and pinned files

Pujar Fitxer

POST /upload/new

Pugeu qualsevol fitxer a IPFS. El fitxer es fixa i es retorna un CID permanent.

Cos de la sol·licitud

ParàmetreTipusRequeritDescripció
contentstring | objectObjecte/matriu JSON, o dades de fitxer codificades en base64 (imatges, PDF, HTML o qualsevol tipus de fitxer).
descriptionstringNoDescripció breu del contingut pujat.
metadataobjectNoParells clau-valor personalitzats per adjuntar al fitxer. Màx 10 claus. Les claus han de ser alfanumèriques o guió baix, 1-64 caràcters. Els valors han de ser cadenes, màx 256 caràcters cadascun. La mida total de metadata no pot superar 4 KB.

Exemple de sol·licitud

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": "example", "value": 42 },
    "description": "Test upload",
    "metadata": {
      "project": "my-app",
      "environment": "production"
    }
  }'

Pujar una imatge (base64)

javascript
const fs = require("fs");
const image = fs.readFileSync("photo.png").toString("base64");

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: image,
    description: "Profile photo"
  })
});

Resposta 200 OK

json
{
  "cid": "QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN",
  "sizeMB": 0.042,
  "uris": {
    "ipfs": "ipfs://QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN",
    "url": "https://ipfs.ninja/ipfs/QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN"
  }
}

Llistar Fitxers

GET /upload/list

Recupereu una llista dels vostres fitxers IPFS pujats dins d'un rang de temps.

Paràmetres de consulta

ParàmetreTipusRequeritDescripció
fromnumberInici del rang de temps, marca de temps Unix en millisegons.
tonumberFinal del rang de temps, marca de temps Unix en millisegons.

Exemple de sol·licitud

bash
curl "https://api.ipfs.ninja/upload/list?from=1704067200000&to=1735689600000" \
  -H "X-Api-Key: bws_your_api_key_here"

Resposta 200 OK

json
[
  {
    "cid": "QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN",
    "fileName": "Test upload",
    "fileType": "json",
    "sizeMB": 0.001,
    "createdAt": 1711036800000,
    "metadata": {
      "project": "my-app",
      "environment": "production"
    },
    "uris": {
      "ipfs": "ipfs://QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN",
      "url": "https://ipfs.ninja/ipfs/QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN"
    }
  }
]

Obtenir Fitxer

GET /file/:cid

Recupereu metadata per a un fitxer pujat específic pel seu CID.

Paràmetres de ruta

ParàmetreTipusRequeritDescripció
cidstringL'identificador de contingut IPFS del fitxer.

Exemple de sol·licitud

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

Resposta 200 OK

json
{
  "cid": "QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN",
  "fileName": "Test upload",
  "fileType": "json",
  "sizeMB": 0.001,
  "createdAt": 1711036800000,
  "uris": {
    "ipfs": "ipfs://QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN",
    "url": "https://ipfs.ninja/ipfs/QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN"
  }
}