agentic‑readiness docs
/
Build one › Run a scan ›

DocsCapabilitiesschema:Action

schema:Action

Declares actions an agent could take from this page.

adoption Web baselinetrend ► flatchecked on every pagechecks 5verified 2026-08-12
Set up schema:Action on your site How to describe an action an agent can take, rather than only the content of the page.
Free Add schema:Action markup

Why an agent cares

An Action with a usable target tells an agent what it can do here, not just what the page is about. Almost all of the installed base is boilerplate SearchAction from CMS defaults, so a hand-written Action is worth validating.

Adoption

Web baseline. Standard equipment on the web. Its absence is the exception rather than its presence. For this one in particular, ubiquitous as legacy search markup, barely used as an interface an agent can act on.

Direction of travel: ► flat, as at .

potentialAction sits on 10M+ domains, but that is mostly SearchAction boilerplate and no agent vendor has committed to consuming Action markup as an execution interface.

What we check

Absence is never a finding. Every check below runs only once schemaActionPresent is true, so a site that has not adopted this is not assessed on it and appears in no report. 5 of these 5 can fail it. In a Lumar crawl these land on the page's own row.
CheckSeverityRaisesOn whose authority
schemaActionMissingTargethighusabilitySchema.org profile
schemaActionTargetMissingEntryPointhighusabilitySchema.org profile
schemaActionMissingQueryInputmediumusabilityLumar readiness profile
schemaActionUnknownTypemediumusabilitySchema.org profile
schemaActionUrlTemplateMissingPlaceholderlowusabilityLumar readiness profile

Examples

Both of these are fixtures the test suite runs through the real collector, not snippets written for a document: the first is a shape we score as valid, the second is one we flag.

correcthtmltest/e2e/test-pages/capabilities/correct.html (excerpt)
<!-- schemaActionPresent + correct: WebSite with a valid SearchAction potentialAction
         (target EntryPoint + query-input). -->
    <script type="application/ld+json">
      {
        "@context": "https://schema.org",
        "@type": "WebSite",
        "url": "https://example.com",
        "potentialAction": {
          "@type": "SearchAction",
          "target": {
            "@type": "EntryPoint",
            "urlTemplate": "https://example.com/search?q={search_term_string}"
          },
          "query-input": "required name=search_term_string"
        }
      }
    </script>
present but wronghtmltest/e2e/test-pages/capabilities/issues.html (excerpt)
<!-- schemaActionPresent: yes (potentialAction exists). schemaActionMissingTarget +
         schemaActionMissingQueryInput: the SearchAction has no target/EntryPoint and no
         query-input. -->
    <script type="application/ld+json">
      {
        "@context": "https://schema.org",
        "@type": "WebSite",
        "url": "https://example.com",
        "potentialAction": { "@type": "SearchAction" }
      }
    </script>

Specifications

Last re-read against the published documents: .