A Clipboard Manager for JSON on Mac

If you work with APIs, you move JSON around all day: copying a response from a terminal, pasting a payload into a request, grabbing a token out of an object, comparing two responses. The default macOS clipboard holds one item and shows you nothing about it. A clipboard manager built for this kind of work makes JSON far less tedious.

The JSON copy-paste problem

Three things make JSON painful with the native clipboard:

  1. You lose payloads. Copy response A to compare with response B, copy B, and A is gone.
  2. Junk sneaks in. JSON copied from a webpage or a chat tool can carry smart quotes or non-breaking spaces that make it invalid the moment you paste it.
  3. You reuse the same payloads. A request body you test with constantly has to be re-fetched every time.

Keep multiple payloads in history

ClipHistory keeps your last 150 copies. That means you can copy response A, then response B, then a third, and all of them are still available. Open the picker with Cmd+Shift+V, type a few characters to find the one you want, and paste it. Comparing two API responses no longer means copying each one twice.

Clean JSON before you paste it

This is the big one. JSON pasted from outside a code tool often fails to parse because of invisible characters — curly quotes instead of straight ones, a stray non-breaking space, trailing whitespace. ClipHistory's clean AI transform normalizes a clip to plain text before you paste, so the payload lands valid. No more staring at a parser error caused by a character you cannot see.

Summarize a big response

API responses can be huge. When you just need to understand the shape or pull out the relevant fields, use the summarize transform to get a quick description of a long payload. Transforms run through your own API key with one of five providers (Anthropic, OpenAI, DeepSeek, Google, or a custom endpoint), so you choose the model and control the cost. Nothing is sent to a ClipHistory server, because there isn't one — everything stays local on your Mac.

Pin the payloads you reuse

Test bodies, sample requests, an auth header you paste into every call — pin them. Pinned clips are unlimited and never rotate out of history, so a request body you use constantly is always one shortcut away instead of buried in a scratch file.

Organize payloads on boards

When you are testing several endpoints, group the relevant payloads onto a board for that work. One board per project or per API keeps the list short and the type-to-filter search fast. When the project is done, archive the board.

Use the paste stack for multi-field requests

Filling out a request or a form that needs several values in order? Collect them in the paste stack and paste them in sequence without reopening the picker each time. For setting up test scenarios with multiple fields, this removes a lot of switching.

A practical JSON workflow

Here is a setup that works well: let history hold the responses you are actively comparing; pin the request bodies and headers you reuse; keep a board per API you are testing; run clean on any JSON you copied from a browser or chat before pasting it into a tool; use summarize when a response is too big to eyeball. Each step removes a specific bit of friction from moving JSON around.

ClipHistory is signed and notarized by Apple, is a universal binary for Apple Silicon and Intel, and runs on macOS 12 and later. It is local-first with no cloud and no account, which matters when the payloads you copy contain real data.

Why local-first matters for API work

JSON payloads are rarely just structure — they carry real values: user records, tokens, internal IDs, sometimes personal data from a production response you are debugging. A clipboard manager sees all of it. ClipHistory keeps that history on your machine with no cloud and no account, so a sensitive response you copied does not get synced anywhere you did not intend. The only time a payload leaves your Mac is when you run an AI transform, and even then it goes to your own provider via your own API key — never to a ClipHistory server, because there is none.

Compare two responses without losing either

A common debugging task: an endpoint behaves differently between two requests and you want to diff the responses. With a one-item clipboard you would copy one into a file, then the other, juggling windows. With history, copy both, then pull each from the Cmd+Shift+V picker into your diff tool in turn. Neither overwrites the other, and you keep your earlier copies around in case a third comparison turns out to be the real culprit.

Keep auth headers and tokens within reach — carefully

Pinning a local-dev bearer token or a test API key you paste into every request saves real time. The caveat is judgment: pin development credentials, not production secrets you would not want sitting in a list. For the safe-to-keep values, a pin turns "open the env file, find the line, copy, switch back" into a single paste. Because pins persist locally across restarts, the token is there whenever you reopen the picker.

ClipHistory is signed and notarized by Apple, ships as a universal binary, and runs on macOS 12 and later.

Get ClipHistory for macOS

ClipHistory is a local-first clipboard manager built for people who copy and paste all day. It keeps 150 unpinned clips plus unlimited pinned ones, runs on macOS 12+ (Apple Silicon and Intel), and is signed and notarized by Apple. One-time payment of $19.99 for a 12-month license, no auto-renewal. Get ClipHistory for macOS →