How can an action expose its URL template and HTTP method in Schema.org?

The Citead team, updated

In short. Use an EntryPoint target to describe the action URL template, HTTP method and request encoding type.

Definition: In Schema.org, an EntryPoint describes an entry point within a Web-based protocol. Attach it to an action's target when the action needs a URL template, an HTTP method, or request encoding details in addition to a plain URL.

Key facts

  • Schema.org defines an EntryPoint as an entry point within a Web-based protocol in its EntryPoint definition.
  • An action's target can identify an EntryPoint or a URL, according to Schema.org's Action definition.
  • The Schema.org Actions overview describes urlTemplate as an RFC 6570 template, encodingType as supported MIME types for the request, and httpMethod as the HTTP method for an HTTP entry point.
  • RFC 6570 defines a URI Template as a character sequence whose variables can be expanded into URI values.
  • RFC 9110 states that standardized HTTP methods are conventionally written in uppercase US-ASCII letters.

How is the EntryPoint attached to an action?

An action is a Schema.org description of an operation. Its target property identifies the destination EntryPoint or URL. The Actions overview says that potential actions are materialized by execution against the target EntryPoint, and that EntryPoint adds request context when a simple URL is insufficient for formulating the request or processing the result.

The value can therefore be a plain URL when no additional request description is needed, or an object with @type: "EntryPoint" when the action has endpoint metadata. Schema.org's example contains an EntryPoint object with a URL template and a response content type:

{
  "@type": "EntryPoint",
  "urlTemplate": "http://api.urbanspoon.com/r/6/92204",
  "contentType": "application/json+ld"
}

The example uses contentType for the supported response type. encodingType describes the request instead.

What do urlTemplate, httpMethod and encodingType describe?

urlTemplate is a Text value containing an RFC 6570 URI Template. RFC 6570 describes a template as both a structural description of a URI space and machine-readable instructions for constructing a URI when variable values are supplied. A query template such as http://example.com/search{?q,lang} expresses named variables without hard-coding their values.

httpMethod is a Text value naming the HTTP method used for the request. Schema.org requires capitalized strings as used in HTTP. RFC 9110 defines the method token as case-sensitive and says standardized methods are conventionally written in uppercase US-ASCII letters. The method also carries HTTP semantics: the RFC describes GET as transferring a current representation and POST as performing resource-specific processing on request content.

encodingType is a Text value for the supported encoding type or types of the request. The Actions overview calls these supported MIME types for the request and separately calls contentType the supported MIME types of the response. The three fields therefore describe different parts of the exchange: URI construction, request method, and request representation format.

How should the values match the endpoint?

The template variables must correspond to values that the endpoint can receive. RFC 6570 says that a template processor replaces each delimited expression with its value, and shows http://www.example.com/foo{?query,number} expanding to a query string when both variables are defined.

The method string should match the method the endpoint accepts. RFC 9110 states that a server should return 405 (Method Not Allowed) when a recognized method is implemented but not allowed for the target resource. The request encoding should describe the format accepted by that endpoint, while the response format belongs in contentType.

FAQ

Is urlTemplate the same as a URL?

No. A URL identifies one destination. A URI Template can contain expressions whose values are expanded to construct a URI for the action.

Which field describes the response format?

Use contentType for the supported response MIME type. encodingType describes the request MIME type.

Should an HTTP method be uppercase?

Schema.org describes httpMethod values as capitalized strings used in HTTP. RFC 9110 says standardized methods are conventionally written in uppercase US-ASCII letters.

Sources

  1. Schema.org, "EntryPoint", 16 September 2026
  2. Schema.org, "Action", 16 September 2026
  3. Schema.org, "Schema.org Actions", 16 September 2026
  4. IETF, "RFC 6570: URI Template", March 2012
  5. IETF, "RFC 9110: HTTP Semantics", June 2022

Check how a page reads to answer engines. Open the GEO score analyzer

Test a page and see what to fix first

The analysis usually takes less than 10 seconds and needs no account.

400,000+ pages scored in the public benchmark