Der Feed „Media Actions“ ist ein JSON-Objekt, das eine Sammlung von Entitäten enthält. Eine Entität ist ein schema.org-Objekt, das ein Element in deinem Katalog darstellt, z. B. eine TV-Folge, eine TV-Serie, einen Film, einen Song oder ein Album.

Feedstruktur
Wiedergabeaktionen und Wiedergabelistenaktionen haben unterschiedliche Feedstrukturen.
Anseh-Aktionen haben die folgende Hierarchie: |
Anhör-Aktionen haben die folgende Hierarchie: |
Datenfeed-Umschlag
Ein Datenfeed-Umschlag ist das oberste Objekt im Media-Aktionen-Feed. Das Objekt enthält ein Array von Content-Markup-Objekten (Entitäten), die alle Inhalte in Ihrem Katalog repräsentieren.
Ein Datenfeed-Envelope unterstützt die folgenden Eigenschaften:
Attribut | Typ | Beschreibung |
---|---|---|
@context |
URL | Erforderlich: auf http://schema.org festgelegt |
@type |
Text | Erforderlich: Legen Sie hierfür den Wert DataFeed fest. |
dateModified |
DateTime | Erforderlich: Datum und Uhrzeit der letzten Änderung des Feeds im ISO 8601-Format (einschließlich Zeitzone). |
dataFeedElement |
Ding | Erforderlich: Die Entitäten deines Medienkatalogs. |
Vorlage für Datenfeed-Umschlag
{
"@context": "http://schema.org",
"@type": "DataFeed",
"dateModified": "2018-07-20T00:44:51Z",
"dataFeedElement": [
{ <CONTENT MARKUP OBJECT 01> },
{ <CONTENT MARKUP OBJECT 02> },
{ <CONTENT MARKUP OBJECT 03> },
...
]
}
Inhalts-Markup
Ein Content-Markup-Objekt stellt eine einzelne Entität in deinem Katalog dar: einen Film, eine TV-Folge, eine TV-Serie, einen Song, ein Album, einen Radiosender usw. Das Objekt enthält die ID und kanonische URL des Inhalts und hilft, den Inhalt über metadata zu beschreiben.
Vorlage für Inhalts-Markup
Ein Inhalts-Markup-Objekt kann ein Array von Aktions-Markup-Objekten enthalten, sodass die Inhalte mehreren Aktions-Markup-Objekten zugeordnet werden können. So kann der Inhalt beispielsweise pro Region ein anderes Action-Markup-Objekt haben.
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type": "Movie",
"@id": "http://www.example.com/my_favorite_movie",
"url": "http://www.example.com/my_favorite_movie",
"name": "My Favorite Movie",
"potentialAction": [
{ <ACTION MARKUP OBJECT 01> },
{ <ACTION MARKUP OBJECT 02> }
],
...
}
Aktions-Markup
Ein Aktions-Markup-Objekt beschreibt den Deeplink, über den Nutzer zu den Inhalten gelangen, und die für die Inhalte erforderliche Zugriffsebene. Das Objekt ist eine Property (potentialAction
) eines Inhalts-Markup-Objekts.
Es gibt zwei Möglichkeiten, die Zugriffsbeschränkungen anzugeben:
- Verwenden Sie für Watch-Aktionen ein Objekt für die Spezifikation des Aktionszugriffs.
- Verwenden Sie für Anhör-Aktionen ein Angebotsobjekt.
Vorlage für Aktions-Markup
Wenn die Inhalte mehrere Deeplinks enthalten, enthält ein Action-Markup-Objekt mehrere Zielobjekte. So kann sich der Deeplink für iOS-Inhalte beispielsweise vom Deeplink für Android-Inhalte unterscheiden. Wenn es je nach Region und Zeitraum unterschiedliche Zugriffsbeschränkungen gibt, kann ein Aktions-Markup-Objekt mehrere Objekte für die Spezifikation des Aktionszugriffs oder Angebotsobjekte haben, wie in den folgenden Vorlagen dargestellt.
Vorlage für Action-Markup-Objekte für Smartwatch-Aktionen:
"potentialAction": {
"@type": "WatchAction",
"target": [
{ <TARGET OBJECT 01> },
{ <TARGET OBJECT 02> }
],
"actionAccessibilityRequirement": [
{ <ACTION ACCESSIBILITY OBJECT 01> },
{ <ACTION ACCESSIBILITY OBJECT 02> }
]
}
Vorlage für das Action-Markup-Objekt für Anhör-Aktionen:
"potentialAction": {
"@type": "ListenAction",
"target": [
{ <TARGET OBJECT 01> },
{ <TARGET OBJECT 02> }
],
"expectsAcceptanceOf": [
{ <OFFER OBJECT 01> },
{ <OFFER OBJECT 02> }
]
}
Ziel
Ein Zielobjekt dient der Zuordnung eines Deeplinks zu verschiedenen Google-Plattformen. Das Objekt ist eine Property (target
) eines Aktions-Markup-Objekts.
Beispiel für ein Ziel
Wenn die Inhalte je nach Plattform mehrere Deeplinks haben, erstellen Sie mehrere Zielobjekte, um unterschiedliche Zuordnungen bereitzustellen. So kann sich der Deeplink für Chromecast beispielsweise von den Deeplinks der anderen Plattformen unterscheiden, wie im Beispiel unten gezeigt.
Beispiel für ein Zielobjekt (einfach):
"target": {
"@type": "EntryPoint",
"urlTemplate": "http://www.example.com/my_favorite_movie?autoplay=true",
"actionPlatform": [
"http://schema.org/DesktopWebPlatform",
"http://schema.org/MobileWebPlatform",
"http://schema.org/AndroidPlatform",
"http://schema.org/AndroidTVPlatform",
"http://schema.org/IOSPlatform",
"http://schema.googleapis.com/GoogleVideoCast"
]
}
Beispiel für ein Zielobjekt mit zwei Deeplinks:
"target": [
{
"@type": "EntryPoint",
"urlTemplate": "http://www.example.com/my_favorite_movie?autoplay=true",
"actionPlatform": [
"http://schema.org/DesktopWebPlatform",
"http://schema.org/MobileWebPlatform",
"http://schema.org/AndroidPlatform",
"http://schema.org/AndroidTVPlatform",
"http://schema.org/IOSPlatform"
]
},
{
"@type": "EntryPoint",
"urlTemplate": "http://www.example.com/cast/my_favorite_movie?autoplay=true",
"actionPlatform": [
"http://schema.googleapis.com/GoogleVideoCast"
]
}
]
Spezifikation für den Aktionszugriff
Ein Objekt mit einer Zugriffsspezifikation für Aktionen beschreibt die Zugriffsanforderungen für die Inhalte basierend auf der Region und dem Zeitraum. Das Objekt ist eine Property (actionAccessibilityRequirement
) eines Aktions-Markup-Objekts.
category
des Objekts kann Folgendes sein:
nologinrequired
free
subscription
Erstelle ein Medienaboobjekt, um die Details des Abos zu beschreiben. Wenn für die Inhalte ein zusätzlicher Kauf für die Abonnenten erforderlich ist, verwende ein Angebotsobjekt, um den Preis anzugeben.
externalsubscription
Erstelle ein Medienaboobjekt, um die Details des Abos zu beschreiben. Wenn für die Inhalte ein zusätzlicher Kauf für die Abonnenten erforderlich ist, verwende ein Angebotsobjekt, um den Preis anzugeben.
rental
Verwenden Sie ein Angebotsobjekt, um den Preis anzugeben.
purchase
Verwenden Sie ein Angebotsobjekt, um den Preis anzugeben.
Medienabo
Ein Medienaboobjekt beschreibt die Details des für Inhalte erforderlichen Abos. Das Objekt ist eine Property (requiresSubscription
) eines Objekts für die Spezifikation des Aktionszugriffs. Das ist erforderlich, wenn actionAccessibilityRequirement.category
subscription
oder externalSubscription
ist und Ihr Aboangebot mehrere Pakete oder Stufen umfasst oder Add-ons unterstützt. Füge diese Informationen nicht hinzu, wenn dein Abo nur eine Stufe hat und Zugriff auf alle Inhalte in deinem Katalog gewährt.
Beispiel für ein Medienabo
Beispiel für ein Objekt für ein Medienabo:
"requiresSubscription": {
"@type": "MediaSubscription",
"@id": "http://www.example.com/premium_subscription",
"name": "Example Premium",
"sameAs": "http://www.example.com/premium_subscription"
}
Angebot
Ein Angebotsobjekt beschreibt den mit Inhalten verbundenen Preis. Das Objekt ist eine Property (expectsAcceptanceOf
) der folgenden Objekte:
- Für Wiedergabeaktionen ein Objekt für die Spezifikation des Aktionszugriffs.
- Für Anhör-Aktionen: ein Action-Markup-Objekt.
Beispiel für ein Angebot
Bei Wiedergabeaktionen wird das Attribut expectsAcceptanceOf
im Objekt für die Spezifikation des Aktionszugriffs angegeben:
"potentialAction":{
"@type":"WatchAction",
"target":{
"@type":"EntryPoint",
"urlTemplate":"http://www.example.com/my_favorite_movie?autoplay=true",
"actionPlatform":[ "http://schema.org/DesktopWebPlatform" ]
},
"actionAccessibilityRequirement": {
"@type": "ActionAccessSpecification",
"category": "purchase",
"availabilityStarts": "2019-01-01T00:00Z",
"availabilityEnds": "2019-12-31T00:00Z",
"eligibleRegion": {
"@type": "Country",
"name": "US"
},
"expectsAcceptanceOf": {
"@type": "Offer",
"price": 7.99,
"priceCurrency": "USD",
"seller": {
"@type": "Organization",
"name": "My example seller"
}
}
}
}
Bei „Listen-Aktionen“ wird die expectsAcceptanceOf
-Property direkt im Action-Markup-Objekt angegeben:
"potentialAction":{
"@type":"ListenAction",
"target":{
"@type":"EntryPoint",
"urlTemplate":"http://www.example.com/playlist/top_pop_songs?autoplay=true",
"actionPlatform":[ "http://schema.org/DesktopWebPlatform" ]
},
"expectsAcceptanceOf":{
"@type": "Offer",
"eligibleRegion": {
"@type":"Country",
"name":"US"
},
"category": "subscription",
"name": "Example Music",
"price": 9.99,
"priceCurrency": "USD",
"seller": {
"@type": "Organization",
"name": "My example seller",
"sameAs": "http://www.example.com"
}
}
}
Bild
Ein Bildobjekt beschreibt das Bild, das mit Inhalten verknüpft ist.
Das Bild muss folgende Anforderungen erfüllen:
- Verwenden Sie für Wiedergabeaktionen ein hochauflösendes Bild (mindestens 140 × 210 Pixel) mit einem Seitenverhältnis von 2:3.
- Das Bild muss im Format
.jpg
oder.png
vorliegen.
- Das Bild muss im Format
- Verwenden Sie für Aktionen vom Typ „Anhören“ ein hochauflösendes Bild (mindestens 300 × 300 Pixel) mit einem Seitenverhältnis von 1:1.
- Wir empfehlen eine Größe von mindestens 600 x 600 Pixeln.
- Das Bild muss das Format
.jpg
,.png
oder.gif
haben.
- Die URL des Bildes muss gecrawlt und indexiert werden können.
- Sie müssen die Rechte zur Verwendung des Bildes haben und zulassen, dass das Bild auf Google-Geräten und -Properties angezeigt wird.
- Das Bild darf Folgendes nicht enthalten:
- Unscharfe, verpixelte, gedrehte oder Bilder mit schlechter Qualität
- Nicht lizenzierte oder Stockfotos
- Nacktheit
- Illegale Inhalte
- Wenn Sie
MusicPlaylist
aktualisieren, aktualisieren Sie das Bild, damit es den neuen Inhalten entspricht.
Beispielbild
"image": {
"@type": "ImageObject",
"contentUrl" : "http://www.example.com/artist/my_favorite_artist/1x1/photo1.jpg",
"dateModified" : "2019-01-05T22:11:33+00:00",
"regionsAllowed" : ["US","UK","MX"]
}
Feedbeispiele
Die folgenden Beispiele zeigen den Unterschied in der Feedstruktur zwischen Wiedergabeaktionen und Wiedergabeaktionen.
Beispiel für Watch Actions
{
"@context": "http://schema.org",
"@type": "DataFeed",
"dateModified": "2018-07-20T00:44:51Z",
"dataFeedElement": [
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type": "Movie",
"@id": "http://www.example.com/my_favorite_movie",
"url": "http://www.example.com/my_favorite_movie",
"name": "My Favorite Movie",
"potentialAction": {
"@type": "WatchAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "http://www.example.com/my_favorite_movie?autoplay=true",
"inLanguage": "en",
"actionPlatform": [
"http://schema.org/DesktopWebPlatform",
"http://schema.org/MobileWebPlatform",
"http://schema.org/AndroidPlatform",
"http://schema.org/AndroidTVPlatform",
"http://schema.org/IOSPlatform",
"http://schema.googleapis.com/GoogleVideoCast"
]
},
"actionAccessibilityRequirement": {
"@type": "ActionAccessSpecification",
"category": "subscription",
"availabilityStarts": "2018-07-21T10:35:29Z",
"availabilityEnds": "2019-10-21T10:35:29Z",
"eligibleRegion": [
{
"@type": "Country",
"name": "US"
},
{
"@type": "Country",
"name": "CA"
}
],
}
},
"sameAs": "https://en.wikipedia.org/wiki/my_favorite_movie",
"releasedEvent": {
"@type": "PublicationEvent",
"startDate": "2008-01-20",
"location": {
"@type": "Country",
"name": "US"
}
},
"description": "This is my favorite movie.",
"actor": [
{
"@type": "Person",
"name": "John Doe",
"sameAs": "https://en.wikipedia.org/wiki/John_Doe"
},
{
"@type": "Person",
"name": "Jane Doe",
"sameAs": "https://en.wikipedia.org/wiki/Jane_Doe"
}
],
"identifier": [
{
"@type": "PropertyValue",
"propertyID": "IMDB_ID",
"value": "tt0123456"
}
]
}
]
}
Beispiel für Anhör-Aktionen
{
"@context": "http://schema.org",
"@type": "DataFeed",
"dateModified": "2018-07-20T00:44:51Z",
"dataFeedElement": [
{
"@context":"http://schema.googleapis.com/",
"@type":"MusicGroup",
"@id":"http://www.example.com/artist/my_favorite_artist/",
"url":"http://www.example.com/artist/my_favorite_artist/",
"name":"My Favorite Artist",
"sameAs":"https://en.wikipedia.org/wiki/my_favorite_artist",
"description":"This is my favorite pop music artist.",
"potentialAction": {
"@type":"ListenAction",
"target": {
"@type":"EntryPoint",
"urlTemplate":"http://www.example.com/artist/my_favorite_artist?autoplay=true",
"actionPlatform":[
"http://schema.org/DesktopWebPlatform",
"http://schema.org/IOSPlatform",
"http://schema.org/AndroidPlatform",
"http://schema.org/AndroidTVPlatform",
"http://schema.googleapis.com/GoogleAudioCast",
"http://schema.googleapis.com/GoogleVideoCast"
]
},
"expectsAcceptanceOf":{
"@type":"Offer",
"category":"subscription",
"eligibleRegion": {
"@type":"Country",
"name":"US"
},
"price": 8.99,
"priceCurrency": "USD"
}
},
"subjectOf": {
"@type":"MusicPlaylist",
"@id":"http://www.example.com/artist_mix/my_favorite_artist/",
"url":"http://www.example.com/artist_mix/my_favorite_artist/",
"name":"My Favorite Artist Mix",
"description":"A mix of music similar to My Favorite Artist",
"potentialAction":{
"@type":"ListenAction",
"target": {
"@type":"EntryPoint",
"urlTemplate":"http://www.example.com/artist_mix/my_favorite_artist?autoplay=true",
"actionPlatform":[
"http://schema.org/DesktopWebPlatform",
"http://schema.org/IOSPlatform",
"http://schema.org/AndroidPlatform",
"http://schema.org/AndroidTVPlatform",
"http://schema.googleapis.com/GoogleAudioCast",
"http://schema.googleapis.com/GoogleVideoCast"
]
},
"expectsAcceptanceOf":{
"@type":"Offer",
"category":"free",
"eligibleRegion": {
"@type":"Country",
"name":"US"
}
}
}
}
}
]
}