Review Action

Use to declare a review action. Gmail may show a review button next to the email, which will prompt the user for a numeric review value and / or a user comment.

Review Action in Gmail
Review action button in the inbox

Numeric Rating

Embed the following markup in your email to instruct Gmail to render a rate and review button for a restaurant:

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "potentialAction": {
    "@type": "ReviewAction",
    "review": {
      "@type": "Review",
      "itemReviewed": {
        "@type": "FoodEstablishment",
        "name": "Joe's Diner"
      },
      "reviewRating": {
        "@type": "Rating",
        "bestRating": "5",
        "worstRating": "1"
      }
    },
    "handler": {
      "@type": "HttpActionHandler",
      "url": "http://reviews.com/review?id=123",
      "requiredProperty": {
        "@type": "Property",
        "name": "review.reviewRating.ratingValue"
      },
      "method": "http://schema.org/HttpRequestMethod/POST"
    }
  },
  "description": "We hope you enjoyed your meal at Joe's Diner. Please rate your experience."
}
</script>

Microdata

<div itemscope itemtype="http://schema.org/EmailMessage">
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ReviewAction">
    <div itemprop="review" itemscope itemtype="http://schema.org/Review">
      <div itemprop="itemReviewed" itemscope itemtype="http://schema.org/FoodEstablishment">
        <meta itemprop="name" content="Joe's Diner"/>
      </div>
      <div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
        <meta itemprop="bestRating" content="5"/>
        <meta itemprop="worstRating" content="1"/>
      </div>
    </div>
    <div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
      <link itemprop="url" href="http://reviews.com/review?id=123"/>
      <div itemprop="requiredProperty" itemscope itemtype="http://schema.org/Property">
        <meta itemprop="name" content="review.reviewRating.ratingValue"/>
      </div>
      <link itemprop="method" href="http://schema.org/HttpRequestMethod/POST"/>
    </div>
  </div>
  <meta itemprop="description" content="We hope you enjoyed your meal at Joe's Diner. Please rate your experience."/>
</div>

Review Text

In addition to a rating, users may also provide a textual comment, up to 10000 characters long. To achieve that, declare review.reviewBody as optionalProperty or requiredProperty:

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "potentialAction": {
    "@type": "ReviewAction",
    "review": {
      "@type": "Review",
      "itemReviewed": {
        "@type": "FoodEstablishment",
        "name": "Joe's Diner"
      },
      "reviewRating": {
        "@type": "Rating",
        "bestRating": "5",
        "worstRating": "1"
      }
    },
    "handler": {
      "@type": "HttpActionHandler",
      "url": "http://reviews.com/review?id=123",
      "requiredProperty": {
        "@type": "Property",
        "name": "review.reviewRating.ratingValue"
      },
      "optionalProperty": {
        "@type": "Property",
        "name": "review.reviewBody"
      },
      "method": "http://schema.org/HttpRequestMethod/POST"
    }
  },
  "description": "We hope you enjoyed your meal at Joe's Diner. Please tell us about it."
}
</script>

Microdata

<div itemscope itemtype="http://schema.org/EmailMessage">
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ReviewAction">
    <div itemprop="review" itemscope itemtype="http://schema.org/Review">
      <div itemprop="itemReviewed" itemscope itemtype="http://schema.org/FoodEstablishment">
        <meta itemprop="name" content="Joe's Diner"/>
      </div>
      <div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
        <meta itemprop="bestRating" content="5"/>
        <meta itemprop="worstRating" content="1"/>
      </div>
    </div>
    <div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
      <link itemprop="url" href="http://reviews.com/review?id=123"/>
      <div itemprop="requiredProperty" itemscope itemtype="http://schema.org/Property">
        <meta itemprop="name" content="review.reviewRating.ratingValue"/>
      </div>
      <div itemprop="optionalProperty" itemscope itemtype="http://schema.org/Property">
        <meta itemprop="name" content="review.reviewBody"/>
      </div>
      <link itemprop="method" href="http://schema.org/HttpRequestMethod/POST"/>
    </div>
  </div>
  <meta itemprop="description" content="We hope you enjoyed your meal at Joe's Diner. Please tell us about it."/>
</div>

Restaurants, Products, Movies, etc.

Gmail supports reviews for entities of the following types:

  • Movies
  • Restaurants
  • Products (including commodity services)

For example, use the following markup to review a Movie:

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "potentialAction": {
    "@type": "ReviewAction",
    "review": {
      "@type": "Review",
      "itemReviewed": {
        "@type": "Movie",
        "name": "Oblivion"
      },
      "reviewRating": {
        "@type": "Rating",
        "bestRating": "5",
        "worstRating": "1"
      }
    },
    "handler": {
      "@type": "HttpActionHandler",
      "url": "http://reviews.com/review?id=123",
      "requiredProperty": {
        "@type": "Property",
        "name": "review.reviewRating.ratingValue"
      },
      "method": "http://schema.org/HttpRequestMethod/POST"
    }
  },
  "description": "We hope you enjoyed your meal at Joe's Diner. Please tell us about it."
}
</script>

Microdata

<div itemscope itemtype="http://schema.org/EmailMessage">
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ReviewAction">
    <div itemprop="review" itemscope itemtype="http://schema.org/Review">
      <div itemprop="itemReviewed" itemscope itemtype="http://schema.org/Movie">
        <meta itemprop="name" content="Oblivion"/>
      </div>
      <div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
        <meta itemprop="bestRating" content="5"/>
        <meta itemprop="worstRating" content="1"/>
      </div>
    </div>
    <div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
      <link itemprop="url" href="http://reviews.com/review?id=123"/>
      <div itemprop="requiredProperty" itemscope itemtype="http://schema.org/Property">
        <meta itemprop="name" content="review.reviewRating.ratingValue"/>
      </div>
      <link itemprop="method" href="http://schema.org/HttpRequestMethod/POST"/>
    </div>
  </div>
  <meta itemprop="description" content="We hope you enjoyed your meal at Joe's Diner. Please tell us about it."/>
</div>

Test your markup

You can validate your markup using the Email Markup Tester Tool. Paste in your markup code and click the Validate button to scan the content and receive a report on any errors present.

Specification

The following table lists all available properties for this type:

ReviewAction

Type name: ReviewAction

Extends Action or AssessAction

Name Type Description
handler HttpActionHandler Handlers supported by RSVP action.
resultReview Review A sub property of result. The review that resulted in the performing of the action.
review Review The review.

Send feedback about...

Email Markup
Email Markup
Need help? Visit our support page.