XooCode(){

RsvpAction

RsvpAction is an InformAction subtype (InformAction → CommunicateActionInteractActionAction) for notifying an event organizer whether the agent plans to attend. It is Google's primary action for event RSVP markup in Gmail and Calendar emails.

Full example of schema.org/RsvpAction json-ld markup

The markup is verified as valid with Rich Results Test from Google.

Highlight legend:Required by GoogleRecommendedOptional
schema.org/RsvpAction
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "RsvpAction",
  "agent": { "@type": "Person", "name": "Dr Henrik Lund", "email": "henrik.lund@example.dk" },
  "object": {
    "@type": "Event",
    "name": "Dunmore Medical Archive — 1945 Anniversary Dinner",
    "startDate": "2026-04-23T19:00:00+02:00",
    "location": {
      "@type": "Place",
      "name": "NordicKitchen Studio",
      "address": { "@type": "PostalAddress", "streetAddress": "Nørrebrogade 44", "addressLocality": "Copenhagen", "postalCode": "2200", "addressCountry": "DK" }
    }
  },
  "rsvpResponse": "https://schema.org/RsvpResponseYes",
  "additionalNumberOfGuests": 1,
  "comment": { "@type": "Comment", "text": "Looking forward — I'll bring a signed copy of the 1945 paper for the archive." },
  "target": {
    "@type": "EntryPoint",
    "urlTemplate": "https://dunmore.example/events/1945-anniversary/rsvp?token={token}",
    "actionPlatform": ["https://schema.org/DesktopWebPlatform", "https://schema.org/MobileWebPlatform"]
  },
  "actionStatus": "https://schema.org/CompletedActionStatus"
}
</script>

Direct properties (3)

  • rsvpResponse: RsvpResponseType enum — one of RsvpResponseYes, RsvpResponseNo, RsvpResponseMaybe.
  • additionalNumberOfGuests: Number — how many extra guests the agent is bringing beyond themselves.
  • comment: Comment — free-text note to the organizer.

The RSVP lives inside an Event.potentialAction or as a standalone ActivityStream entry. Pair with target (an EntryPoint whose urlTemplate is the RSVP URL) and the inherited agent (the attendee) and object (the Event).

Minimal valid version

The smallest markup that still produces a valid RsvpAction entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.

schema.org/RsvpAction (minimal)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "RsvpAction",
  "agent": { "@type": "Person", "name": "Attendee" },
  "object": { "@type": "Event", "name": "Example event" },
  "rsvpResponse": "https://schema.org/RsvpResponseYes"
}
</script>

Google rich results this unlocks

Markup matching this example makes your page eligible for the following Google Search rich results. The primary target drives the required / recommended property classification in the advanced code block above.

  • Gmail RSVP action (confirm-your-attendance card)primary
    Google docs

Common RsvpAction mistakes

Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.

  1. 01

    rsvpResponse as a string 'Yes'

    Wrong
    "rsvpResponse": "Yes"
    Right
    "rsvpResponse": "https://schema.org/RsvpResponseYes"

    rsvpResponse is typed as RsvpResponseType, a closed enum. Gmail's RSVP card only fires on the canonical RsvpResponseYes/No/Maybe values.

  2. 02

    additionalNumberOfGuests includes the agent

    Wrong
    additionalNumberOfGuests: 2 for an agent + 1 guest
    Right
    additionalNumberOfGuests: 1 — the "additional" is beyond the agent

    The property is extras beyond the agent; double-counting inflates the guest count and breaks catering headcounts.

  3. 03

    Missing target EntryPoint in Gmail markup

    Wrong
    RsvpAction with no target
    Right
    target: EntryPoint with urlTemplate pointing at the RSVP-handling URL

    Gmail's confirm-your-attendance card needs a target to resolve when the recipient clicks — without it the action won't render in the inbox.

About the example data

Dr Henrik Lund's RSVP — "Yes, with one guest" — to the Dunmore Medical Archive 1945 Anniversary Dinner invitation sent through Gmail.

Comments

Loading comments...

Leave a comment