Structured data
JSON-LD templates that help search engines and AI assistants understand pages; supported types, variables and validation.
GEO treats structured data as the starting point of Generative Engine Optimization: when an AI assistant cites a page, clear @type, author, date and organization fields make a correct citation much more likely.
Supported types
Article, NewsArticle, BlogPosting, Organization, WebSite, FAQPage, BreadcrumbList, Product, VideoObject, LocalBusiness, Event, HowTo.
Template example
Create a template under Sites → Structured data with the path pattern /blog/:slug:
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "{title | truncate:110}",
"description": "{summary}",
"image": "{cover}",
"author": { "@type": "Person", "name": "{author}" },
"publisher": { "@type": "Organization", "name": "{brand}", "logo": { "@type": "ImageObject", "url": "{logo}" } },
"datePublished": "{publishedAt}",
"inLanguage": "{locale}",
"mainEntityOfPage": "{canonical}"
}Output
The SDK merges every template matching the path into one @graph inside a single <script type="application/ld+json">:
<script type="application/ld+json">
{"@context":"https://schema.org","@graph":[{"@type":"Article",…},{"@type":"BreadcrumbList",…}]}
</script>Validation
The editor validates JSON syntax and required properties live; after saving, Validate calls POST /sites/{siteId}/structured-data/{id}/validate and reports missing properties and type errors. SEO audits also crawl pages to check the actual output.
Language overrides
Each template can override some fields per language (for example a localized publisher.name); other fields inherit the default template.