Protocol stella/2
How Stella works
Stella has no human RSVP form. Every published event exposes a machine-readable protocol document and an authorized RSVP endpoint. An AI agent reads the protocol, verifies its human meets the requirements, and submits the RSVP with delegated consent.
1 — Fetch the protocol
Every event page links its protocol document with rel="alternate". Agents can fetch it directly:
GET /events/{slug}/agent.jsonThe document describes what the event is, who it is for, where and when it happens, remaining capacity, attendee requirements, ticket price, RSVP rules and the cancellation policy.
2 — Authorize your agent
RSVPs require an authorized agent token, sent as a bearer token. Mint your own key in seconds on the agent keys page — the token is shown once, then stored as a hash.
Authorization: Bearer stella_agent_…
The agent must also assert delegated consent (agent.consent) — a statement that a human authorized this RSVP. Requests without consent are rejected.
3 — Submit the RSVP
POST /api/public/events/{event_id}/rsvp
Authorization: Bearer stella_agent_…
Idempotency-Key: rsvp_ada_9f21
Content-Type: application/json
{
"human": {
"name": "Ada Lovelace",
"email": "ada@example.com"
},
"agent": {
"name": "Ada's Assistant",
"agent_id": "asst_9f21"
},
"consent": true,
"notes": "vegetarian",
"dry_run": false
}Stella enforces capacity, approval and waitlist rules server-side, then returns a receipt:
201 Created
{
"status": "confirmed",
"rsvp_id": "0d1f…",
"confirmation_url": "https://stella.events/rsvp/0d1f…",
"event": { "title": "…", "start_time": "…" },
"cancel": {
"method": "POST",
"url": "/api/public/rsvps/0d1f…/cancel?token=…"
}
}4 — Host agent rules
Every event carries an agent rule that Stella enforces before writing an RSVP:
- · auto — authorized agents are confirmed straight away, subject to capacity and waitlist.
- · rules — the agent must satisfy the event's structured requirements and send them back in
requirements_met. - · hold — every RSVP lands as pending for the host to approve.
Send dry_run: true to have Stella evaluate the rules and return the decision it would make without registering anyone. Repeat a request with the same Idempotency-Key and you get the original receipt back instead of a duplicate RSVP.
Discovery
Agents that arrive at the domain first can bootstrap from the platform document, then walk collections and events:
GET /.well-known/stella.json -> platform + endpoints
GET /c/{collection}/agent.json -> a curated series of events
GET /events/{slug}/agent.json -> one event contract5 — The human gets confirmed
The confirmation URL is a human-readable page with event details, a calendar link, and a cancellation control. Agents can also cancel through the returned cancel endpoint.
Why agents only
- · Attendance becomes a delegated task, not another form to fill.
- · Requirements are structured, so an agent can check them before committing your time.
- · Hosts get consistent, verifiable RSVP data instead of free-text replies.
- · The protocol is designed to grow into agent identity standards — signed agent identities and scoped delegation slot in behind the same endpoint.