Mendeklarasikan tindakan

Di schema.org, tindakan mewakili aktivitas yang dapat dilakukan pada bagian data terstruktur. Gmail mendukung beberapa jenis tindakan, dan Anda dapat menentukan setiap tindakan dengan data terstruktur yang serupa.

Tindakan buka

Jika menambahkan markup ke konten dengan entity schema.org, Anda dapat menambahkan tindakan buka untuk entity tersebut. Misalnya, untuk memberikan link buka ViewAction ke entity EmailMessage, isi properti potentialAction email, seperti dalam contoh berikut:

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "potentialAction": {
    "@type": "ViewAction",
    "target": "https://watch-movies.com/watch?movieId=abc123",
    "name": "Watch movie"
  },
  "description": "Watch the 'Avengers' movie online"
}
</script>

Microdata

<div itemscope itemtype="http://schema.org/EmailMessage">
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ViewAction">
    <link itemprop="target" href="https://watch-movies.com/watch?movieId=abc123"/>
    <meta itemprop="name" content="Watch movie"/>
  </div>
  <meta itemprop="description" content="Watch the 'Avengers' movie online"/>
</div>

Program email lain yang tidak mendukung skema dalam email akan otomatis mengabaikan markup ini.

Deep linking seluler

Tindakan buka juga dapat menautkan langsung ke konten di aplikasi seluler di Android dan iOS. Untuk deep link ke aplikasi, sertakan URL target tambahan yang dienkode dengan skema android-app:// dan ios-app://, seperti yang ditunjukkan dalam contoh berikut:

JSON-LD

"target": [
  "<web url>",
  "android-app://<android package name>/<scheme>/<host>/<path+query>",
  "ios-app://<App store ID>/<scheme>/<host><path+query>"
]

Microdata

<link itemprop="target" href="<web url>"/>
<link itemprop="target" href="android-app://<android package name>/<scheme>/<host>/<path+query>"/>
<link itemprop="target" href="ios-app://<App store ID>/<scheme>/<host>/<path+query>"/>

Memperluas contoh EmailMessage sebelumnya:

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "name": "Watch movie",
  ... information about the movie ...
  "potentialAction": {
    "@type": "ViewAction",
    "target": [
      "https://watch-movies.com/watch?movieId=abc123",
      "android-app://com.watchmovies.app/http/watch-movies.com/watch?movieId=abc123",
      "ios-app://12345/movieapp/watch-movies.com/watch?movieId=abc123"
    ]
  }
}
</script>

Microdata

<div itemscope itemtype="http://schema.org/EmailMessage">
  <meta itemprop="name" content="Watch movie"/>
  ... information about the movie ...
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ViewAction">
    <meta itemprop="target" content="https://watch-movies.com/watch?movieId=abc123"/>
    <meta itemprop="target" content="android-app://com.watchmovies.android/http/watch-movies.com/watch?movieId=abc123"/>
    <meta itemprop="target" content="ios-app://12345/movieapp/watch-movies.com/watch?movieId=abc123"/>
 </div>
</div>

Jika pengguna tidak memiliki aplikasi Anda, tindakan tersebut akan mengarahkan pengguna ke URL web yang Anda berikan.

Tindakan dalam aplikasi

Gmail menangani tindakan dalam aplikasi di tempat tanpa mengarahkan pengguna ke situs lain. Anda mendeklarasikan tindakan dalam aplikasi seperti tindakan buka, tetapi menyertakan informasi tambahan yang membantu program email menangani tindakan secara inline.

Daripada mendeklarasikan tindakan dengan target, deklarasikan HttpActionHandler untuk tindakan dengan konfigurasi yang tepat.

Misalnya, Anda dapat menambahkan tombol konfirmasi ke email yang mengharuskan pengguna menyetujui, mengonfirmasi, atau mengakui sesuatu. Saat pengguna mengklik tombol, Google akan mengirimkan permintaan HTTP ke layanan Anda, yang akan mencatat konfirmasi tersebut. Pengguna hanya dapat berinteraksi dengan ConfirmAction satu kali.

Contoh berikut menambahkan tombol ConfirmAction ke email tentang laporan pengeluaran:

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "potentialAction": {
    "@type": "ConfirmAction",
    "name": "Approve Expense",
    "handler": {
      "@type": "HttpActionHandler",
      "url": "https://myexpenses.com/approve?expenseId=abc123"
    }
  },
  "description": "Approval request for John's $10.13 expense for office supplies"
}
</script>

Microdata

<div itemscope itemtype="http://schema.org/EmailMessage">
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ConfirmAction">
    <meta itemprop="name" content="Approve Expense"/>
    <div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
      <link itemprop="url" href="https://myexpenses.com/approve?expenseId=abc123"/>
    </div>
  </div>
  <meta itemprop="description" content="Approval request for John's $10.13 expense for office supplies"/>
</div>

Tindakan yang berakhir masa berlakunya

Dalam banyak kasus, tindakan hanya relevan untuk jangka waktu terbatas. Tindakan yang terkait dengan entity yang memiliki tanggal yang diketahui, seperti reservasi perjalanan, akan otomatis berakhir masa berlakunya. Gmail tidak menampilkan tindakan setelah perjalanan berakhir.

Anda juga dapat menambahkan masa berlaku secara eksplisit ke tindakan. Misalnya, tindakan untuk menggunting kupon atau menyimpan kode penawaran mungkin hanya berlaku untuk waktu yang terbatas. Untuk menetapkan jangka waktu saat tindakan ditampilkan, tetapkan properti startTime dan endTime tindakan:

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "potentialAction": {
    "@type": "ConfirmAction",
    "name": "Save coupon",
    "handler":  {
       "@type": "HttpActionHandler",
       "url": "https://my-coupons.com/approve?couponId=abc123"
    },
    "startTime": "2015-06-01T12:00:00Z",
    "endTime": "2015-06-05T12:00:00Z"
  }
}
</script>

Microdata

<div itemscope itemtype="http://schema.org/EmailMessage">
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ConfirmAction">
    <meta itemprop="name" content="Save coupon"/>
    <div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
      <link itemprop="url" href="https://my-coupons.com/approve?couponId=abc123"/>
    </div>
    <meta itemprop="startTime" content="2015-06-01T12:00:00Z" />
    <meta itemprop="endTime" content="2015-06-05T12:00:00Z" />
  </div>
</div>

Bacaan lebih lanjut

Untuk mengetahui detail selengkapnya tentang tindakan, lihat: