ActionAccessSpecification
ActionAccessSpecification is an Intangible for the constraints that apply to an Action: who can perform it, where, when, under what subscription requirements. It is the typical value of actionAccessibilityRequirement on MediaObject and potentialAction target wrappers.
Direct properties:
availabilityStarts/availabilityEnds(Date or Time): the window.eligibleRegion/ineligibleRegion(GeoShape, Place, or Country): geographic scope.category(Text or URL): access category (e.g. "subscription", "free").requiresSubscription(Boolean or MediaSubscription): whether a subscription is required.expectsAcceptanceOf(Offer): an Offer the user must accept (pay-per-view, one-off purchase).
Full example of schema.org/ActionAccessSpecification json-ld markup
The markup is verified as valid with Rich Results Test from Google.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "VideoObject",
"name": "Xoo Code Quarterly — live stream",
"contentUrl": "https://xootv.example/live/xooquarterly-q2",
"potentialAction": {
"@type": "WatchAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "https://xootv.example/live/xooquarterly-q2",
"actionPlatform": ["https://schema.org/DesktopWebPlatform", "https://schema.org/MobileWebPlatform"]
}
},
"actionAccessibilityRequirement": {
"@type": "ActionAccessSpecification",
"name": "XooTV subscribers, United States only",
"category": "subscription",
"requiresSubscription": true,
"availabilityStarts": "2026-06-14T19:00:00-04:00",
"availabilityEnds": "2026-06-14T22:30:00-04:00",
"eligibleRegion": { "@type": "Country", "name": "United States", "identifier": "US" }
}
}
</script>Minimal valid version
The smallest markup that still produces a valid ActionAccessSpecification 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.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "ActionAccessSpecification",
"category": "subscription",
"requiresSubscription": true,
"eligibleRegion": { "@type": "Country", "name": "United States" }
}
</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.
- Google docsGoogle Movie / Video actions (subscription flows)
Common ActionAccessSpecification 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.
- 01
Region as plain text
Wrong"eligibleRegion": "US"RightTyped Country node (or GeoShape)Media-delivery consumers parse typed regions for geo-fencing; plain text is not enforced.
- 02
availabilityEnds omitted on time-boxed streams
WrongLive stream with only availabilityStartsRightPopulate both so consumers know the windowWithout an end, the stream is treated as indefinite.
Schema properties in this example
About the example data
Access spec for the XooTV stream of Xoo Code Quarterly: US subscribers only, live window 19:00-22:00 local.
Comments
Loading comments...