Skip to content

Fichiers

Téléchargez, listez et récupérez des fichiers sur IPFS.

Files page showing uploaded and pinned files

Téléverser un Fichier

POST /upload/new

Téléchargez n'importe quel fichier sur IPFS. Le fichier est épinglé et un CID permanent est retourné.

Corps de la requête

ParamètreTypeRequisDescription
contentstring | objectOuiObjet/tableau JSON, ou données de fichier encodées en base64 (images, PDFs, HTML ou tout type de fichier).
descriptionstringNonDescription courte du contenu téléversé.
metadataobjectNonPaires clé-valeur personnalisees a attacher au fichier. Maximum 10 clés. Les clés doivent etre alphanumeriques ou underscore, de 1 à 64 caracteres. Les valeurs doivent etre des chaines, maximum 256 caracteres chacune. La taille totale des métadonnées ne doit pas depasser 4 Ko.

Exemple de requête

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"
    }
  }'

Téléverser une image (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"
  })
});

Réponse 200 OK

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

Lister les Fichiers

GET /upload/list

Récupérez une liste de vos fichiers IPFS téléversés dans une plage de temps.

Paramètres de requête

ParamètreTypeRequisDescription
fromnumberOuiDebut de la plage de temps, horodatage Unix en millisecondes.
tonumberOuiFin de la plage de temps, horodatage Unix en millisecondes.

Exemple de requête

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

Réponse 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 un Fichier

GET /file/:cid

Récupérez les métadonnées d'un fichier téléversé spécifique par son CID.

Paramètres de chemin

ParamètreTypeRequisDescription
cidstringOuiL'identifiant de contenu IPFS du fichier.

Exemple de requête

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

Réponse 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"
  }
}