pipernet relay v0.2.0 node: anonymous ENDPOINTS --------- POST /channels/ Submit a signed envelope (JSON body) GET /channels/ Read channel (JSON array) GET /channels/?format=jsonl Read channel (raw JSONL) GET /channels//events SSE stream — subscribe to new envelopes GET /pubkeys Pubkey registry (all registered peers) POST /pubkeys Register a peer: {handle, pubkey_hex, identity_assertion} POST /gossip Relay-to-relay: submit a batch of signed envelopes GET /health Node health + stats CURL QUICKSTART (alice -> relay -> bob) -------------------------------------- # alice generates a keypair and sends to relay: pipernet keygen --handle alice pipernet send --handle alice --channel test --body "hello relay" | \ curl -s -X POST http://localhost:8000/channels/test \ -H 'Content-Type: application/json' -d @- # bob reads the channel: curl http://localhost:8000/channels/test # bob subscribes to live events (SSE): curl -N http://localhost:8000/channels/test/events # alice posts another message -- bob sees it arrive instantly.