Stand up a Shared Signals receiver — and drain its queue
Create a poll stream, subscribe yourself as a subject, then poll: verifiable SETs, drained and acked.
- 1
On the CAEP lab, generate an SSF bearer token (shown once) and create a poll stream.
This is the SSF §7 stream-management API a real receiver calls first — the token, hashed at rest, is what every subsequent bearer call resolves back to your own sandbox transmitter.
- 2
Subscribe your own account as a subject, then trigger an event.
A signal only ever queues into a stream that BOTH wants that event type AND has the subject registered — the same two-part match a real transmitter runs before it ever queues a SET.
- 3
Poll now and read the drained, decoded SET — then watch a second poll come back empty.
RFC 8936 poll delivery is at-least-once: an un-acked SET is redelivered on every poll. Draining it acks its jti, so the next poll is empty — and the SET you read is a REAL ES256 JWS, verifiable against the same JWKS the CAEP receiver checks.
Learn the theory
🩻 X-ray — what actually happened
Your own insert-only audit trail — the real server events, sanitized (never a secret), each linked to the lesson that explains it.