JsonLdGraphConfig

Interface

Cascade configuration stored at any level (site, category, page, content).

This is the wire shape persisted in the Lynkow database. The public API exposes the already-resolved graph on structuredData.graph; SDK consumers normally read that resolved array rather than reconstructing one from the raw configs at each level.

Property

Type

Optional

Description

exclusions

string[]

No

Parent-level @id values this level opts out of. Accepts both<br>user-provided ids (e.g. "site-org") and the reserved<br>auto:article / auto:faqpage / auto:breadcrumb / auto:webpage<br>identifiers to suppress Lynkow's implicit nodes. Empty array when no<br>parent node is excluded.

graph

JsonLdNode[]

No

Nodes declared at this cascade level. Order is preserved in the emitted<br>@graph but is not semantically significant for schema.org consumers.<br>Empty array when no nodes are declared.


JsonLdNode

Interface

A single JSON-LD node as stored at one cascade level.

This is the shape the admin / MCP writes into the cascade columns. The public API materializes each entry into a fully resolved schema.org object (adding @context, @id, and preset-driven fields) before returning it under structuredData.graph.

Property

Type

Optional

Description

data

Record<string, unknown>

No

Node payload. The accepted shape depends on source:<br><br>- preset: only the fields documented for the matching preset<br> (e.g. name, address, geo for LocalBusiness). Unknown keys are<br> ignored. Missing context fields (url, inLanguage, etc.) are filled<br> from the page context at render time.<br>- custom: the full schema.org object, minus @context and @id<br> which the server injects. Passed through verbatim after basic sanity<br> checks (non-empty @type, no prototype-pollution keys).

id

string

No

Stable @id for this node. Server-generated (pattern own-<8hex>) when<br>the caller omits it on create. Safe to treat as an opaque string; the<br>public API rewrites it to an absolute URL (<pageUrl>#<id>) in the<br>resolved graph. Never starts with the reserved auto: prefix, which is<br>reserved for nodes Lynkow injects automatically.

source

JsonLdNodeSource

No

Whether the node was created from a Lynkow typed preset or from raw JSON-LD.

type

string

No

schema.org @type identifier (e.g. "Organization", "LocalBusiness",<br>"Product"). Any schema.org type is accepted; 27 first-class presets<br>get typed field mapping server-side, unknown types pass through via<br>source: 'custom'.


JsonLdNodeSource

TypeAlias

Source of a JSON-LD node.

  • preset: the node was created from a Lynkow typed preset (Organization, LocalBusiness, Product, etc.). The server fills unspecified fields from the page context and mapped preset schema.

  • custom: the node is a raw JSON-LD object supplied verbatim by the caller. The server only performs basic sanity checks (non-empty @type, prototype-pollution guard).

TypeScript
type JsonLdNodeSource = "preset" | "custom"