An invitation your assistant can hand you.
The link contract
URL-encode every value. Missing or invalid parameters show placeholders, not an error page. Text is displayed as text. A preview never accepts real RSVPs and creates no project until activation.
| Parameter | Meaning |
|---|---|
| title | Party title, up to 80 characters |
| date | YYYY-MM-DD; “Oct 30” also works (current year) |
| time / end | Start / optional end, HH:MM in 24-hour time; “6pm” also works |
| place | Venue or address, up to 200 characters |
| host | Host display name, up to 60 characters |
| image | Public HTTPS artwork URL. Upload fallback if unavailable. |
| note | Optional plain-text message, up to 500 characters |
| lang | en (default) or es for the invitation and RSVP form |
| tz | Optional IANA time zone, for example America/Chicago |
| utm_source | Attribution, for example chatgpt, claude, or gemini |
Artwork and sharing
Artwork is copied and checked when first requested. Missing, expired, or rejected images leave an upload control. Hosts can edit the preview URL and send it back to their assistant. After activation, /i/slug is the single permanent guest link with RSVP, a calendar download, and a map link.
Problems, not telemetry
GET or POST /api/agent/feedback accepts type (issue, feature_request, feedback), message (up to 2,000 characters), and optional agent, slug, url. Success returns 204. Do not include private guest details. Report a problem only when one occurs.
MCP and REST
The complete authenticated workflow is documented at /developers. Tools: upload_invitation_image, create_invitation, update_invitation, get_invitation, list_invitations, activate_invitation, get_rsvps, and report_feedback. Upload generated artwork directly, save incomplete drafts, configure RSVP, and activate eligible invites in your conversation. The URL contract above is the unauthenticated fallback.
