Migrate from Pinata
Same API calls, better privacy.
API Mapping
| Pinata 1.x | Pinner | Pinata 2.x | Pinner |
|---|---|---|---|
pinata.upload | adapter.upload | pinata.upload | adapter.upload |
pinata.pinList | adapter.pin.list | pinata.pinList | adapter.pin.list |
pinata.unpin | adapter.pin.remove | pinata.unpin | adapter.pin.remove |
Upload Public File
const result = await pinata.upload.public.file(file);List Pins
const result = await pinata.pinList({ status: "pinned" });Delete Pin
const result = await pinata.unpin(cid);Test migration now
export PINNER_API_KEY="your_api_key"
npm install @lumeweb/pinnerimport { pinataAdapter } from "@lumeweb/pinner";
const adapter = pinataAdapter({ jwt: process.env.PINNER_API_KEY });
// Quick test
const test = await adapter.upload.public.json({ test: true }).execute();
console.log("CID:", test.cid);Unsupported features?
See the Adapter Limitations table for feature compatibility.