Say what you will capture.

A capture key is the write half of epcis.dev: capture, query, and the MCP door open with it, and capturedBy — the warrantor the gateway stamps on every event — is the account it names. The calculators — /translate, /validate, /hash — answer on this origin without one.

Two things here: the capture-key list, and the interface you can run right now — on this origin, and on your own bench:

Get on the list for a capture key.

Step one is an address and what you mean to point at the door; after it, a handful of optional questions — each one chosen by your previous answer — about what you have actually done, never what you might buy.

What will you capture?

We use your address to tell you when your key is ready and to follow up about it; you can tell us to stop at any time. We don’t sell it or hand it to advertisers. If we stop working on this, we say so rather than go quiet.

One address in. The row is what you give it — address, intent, timestamp, and the answers you choose to type — plus a token we mint for that row so nobody who merely knows your address can open it. We use your address to follow up about this; we don’t sell it or hand it to advertisers. Separately, this origin does record the request itself — the referring page, the user agent, the address and the network it came from, and whether we judge the caller a person, an agent or a crawler. That is its own store, and the address is taken out of it after 30 days — while the estate’s append-only event ledger is never rewritten: what we log, in full.

Run the interface while you wait.

No key stands in front of the calculators: POST /translate, /validate and /hash answer on this origin, and npx epcis.dev runs the full gateway — capture laws, validation, event hash, error bodies — on your own bench. Audit the rest without asking anyone: the pinned digests on the conformance page — re-hash GS1's artifacts yourself — and the dated ledger.

Validated. Stamped. Hashed. Appended. We email you when your key is ready.

The dated ledger →