Skip to content
pin

pinterest, from the command line

Crawl public Pinterest pins, boards, and users into structured records. One pure-Go binary, no API key, output that pipes into the rest of your tools, and a resource-URI driver other programs can address.

pin reads public Pinterest the way a logged-out browser does, shapes the responses into clean records, and gets out of your way.

pin get <ref>                  # one pin by id or URL
pin search <query>             # search for pins
pin board show <ref>           # a board's metadata
pin user show <name>           # a profile's metadata
pin serve --addr :7777         # the same operations over HTTP

There is no API key, nothing to sign up for, and nothing to run alongside it. Output adapts to where it goes: an aligned table on your terminal, JSONL the moment you pipe it somewhere.

pin is an independent tool and is not affiliated with Pinterest.

Two ways to use it

  • As a command for reading Pinterest by hand or in a script. Start with the quick start.
  • As a resource-URI driver so a host like ant can address Pinterest as pinterest:// URIs and follow links across sites. See resource URIs.

Both are the same code: one operation, declared once, is a CLI command, an HTTP route, an MCP tool, and a URI dereference.

A note on what anonymous access reaches

pin reads only what Pinterest serves to a logged-out browser, and Pinterest's anti-bot measures vary by source IP. From a residential connection every command returns data. From a datacenter or cloud IP the metadata paths keep working while the pin-grid feeds can come back empty. See troubleshooting for the full picture.

Where to go next

Getting started Install pin, learn the model, and run your first command. Guides Task-oriented walkthroughs for the things people do with pin.