Skip to main content

SigNet signed data

SigNet is temporary public distribution for maker-signed protocol data: NFT listings, order payloads, votes or vouchers. An EIP-712 envelope authenticates its maker and payload. Storing it does not fill an order, cast an on-chain vote or settle a payment.

Envelope and verification​

The signed fields are protocol address, maker, payload hash, salt and exclusive Unix-second expiresAt. The domain binds chain ID and SigNet registry address. The reference version supports EOA secp256k1 makers. Public signing-schema and SDK release details are TBD; integrations must use the exact released domain and envelope types.

An underlying protocol may require its own signature, nonce, approval, balance or cancellation checks. The outer envelope protects that payload's integrity; it cannot make an invalid or cancelled order executable.

Publication flow​

  1. Read /v1/network and independently check its chain ID and registry against the announced deployment.
  2. Prepare the underlying protocol's canonical payload, a unique salt and an expiry.
  3. Sign the released EIP-712 envelope with the maker's application signer.
  4. Submit it to POST /v1/signet and retain the returned record ID.
  5. On retrieval, verify the signature, domain, payload hash and expiry before using the record.

The released signing schema is required to construct an envelope correctly. A private key belongs with its signer, never in frontend configuration. Publication is not settlement or a proof that every peer retained the record.

Current limits​

ItemReference API limit
PayloadEven-length 0x hex, up to 16 KiB
ExpiryGreater than now, at most 30 days ahead
Live records100,000 per Redis namespace
Process cache256 records
Request body80 KB
Default request rate300/minute per IP

Public reads and ingestion need no bearer read token; valid maker signatures are required for writes. Retrying an envelope does not extend expiry. Peers verify replicated records and preserve the original expiry. Pagination is eventually consistent: traverse until nextCursor is null and repeat scans to observe concurrent changes. A filtered page may be empty while another cursor remains.

A two-week, JOLT-holdings-based capacity model and delegated allowances are proposed behavior, not these current API rules.

Optional on-chain announcement​

A protocol can configure a fixed publication fee, authorize makers and deposit a sponsorship pool. An authorized relayer queues /v1/signet/:id/announce, or publishes through the contract. Published is emitted once per envelope; maker revocation emits Revoked. A pool has finite funds and an authorized maker may exhaust them, so apply protocol-specific budgets.

Announcement and envelope-level revocation are separate from protocol fillability. Expired Redis records disappear from reads, but backups, AOF logs, replicated copies and on-chain events are not erased. Do not put secrets or private messages in SigNet. Archive needed public records in your own indexer before expiry.

See the HTTP API for request templates and authentication.