pinata

star 127

Pin files and JSON to IPFS via Pinata (JWT auth + helper scripts).

z80dev By z80dev schedule Updated 2/14/2026

name: pinata description: Pin files and JSON to IPFS via Pinata (JWT auth + helper scripts). homepage: https://docs.pinata.cloud/ metadata: { "lemon": { "emoji": "📌", "requires": { "config": ["PINATA_JWT"], "bins": ["curl"], }, },

}

Pinata

Use Pinata to pin content to IPFS.

This skill ships with small scripts (in scripts/) that wrap the Pinata API with reasonable defaults. Prefer PINATA_JWT auth.

Setup

Auth (recommended):

  • Set PINATA_JWT to a Pinata JWT (Bearer token).

Optional (legacy-only, not supported by all endpoints):

  • Set PINATA_API_KEY and PINATA_API_SECRET (some older endpoints accept these).

Optional endpoint overrides:

  • PINATA_API_URL (default: https://api.pinata.cloud)
  • PINATA_UPLOAD_URL (default: https://uploads.pinata.cloud)

Quickstart

Run these from the Pinata skill directory (seeded to ~/.lemon/agent/skill/pinata by default):

Test auth:

./scripts/auth-test.sh

Upload a file (Pinata v3 uploads API):

./scripts/upload-file.sh ./path/to/file.png --network private --name file.png

Pin a JSON document (wraps your JSON as pinataContent):

./scripts/pin-json.sh ./metadata.json --name "metadata.json"

Pin an existing CID (by hash):

./scripts/pin-by-hash.sh bafy... --name "my-cid"

Unpin:

./scripts/unpin.sh bafy...

Notes

  • These scripts print raw JSON responses (so you can pipe into jq if you want).
  • For very large uploads, resumable uploads, or folder uploads, consider Pinata’s official tooling and docs: https://docs.pinata.cloud/
Install via CLI
npx skills add https://github.com/z80dev/lemon --skill pinata
Repository Details
star Stars 127
call_split Forks 16
navigation Branch main
article Path SKILL.md
More from Creator