Skip to content

Dashboard settings

SettingWhat it isNotes
Site address Your public domain, as a bare host name Published verbatim inside your structured data, so it is validated hard: a port, an @, an IP literal or anything that is not a host name is refused at the field rather than stored
Ownership The verification token, and the check With no commerce platform the check blocks nothing: your pages are read and served before it, and passing it reserves your domain for your account. With Shopify behind your storefront, every artifact endpoint returns 404 until it passes. A confirmed /apps/geoffy mount also proves ownership. Changing your site address clears it: you re-verify on the new domain
Site key hs_live_…, minted for you Goes in GEOFFY_SITE_KEY. Public: it addresses content, it does not authorise anything
Revalidate secret Minted by Geoffy; you copy it into your environment Goes in GEOFFY_REVALIDATE_SECRET. Rotating shows you the new value once. We never send the secret itself; requests carry an HMAC of the body. It also signs the reports the optional AI visit middleware sends from your site
What these pages are Product pages, or Programme pages Only for a site with no commerce platform. Decides what Geoffy reads from each page, the words of the widget, and the type of the structured data. Geoffy proposes it from what your pages declare; you confirm it
Structured data Add it where a page has none, or Never Only for a site with no commerce platform. Never is for a site whose own schema plugin or code must stay the one source of structured data: Geoffy then serves the widget alone. Needs @geoffy/headless 0.3.4 or later. A change reaches your pages when their cache next refreshes
Product URL patterns How your product URLs are shaped, e.g. /products/{handle}. One pattern per language for a site in several languages, e.g. /de/programmes/{handle} and /programmes/{handle} Only for a site with no commerce platform. Geoffy proposes these from your sitemap; the captured segment becomes each product's handle

Two things there is no setting for

What the dashboard shows you

  • Whether ownership is verified, and the exact URL the token must be served at.
  • Whether the /apps/geoffy namespace is mounted, and if not, which of not_mounted, wrong_site or unreachable it is.
  • Per product, whether it is confirmed on your live pages, and the pending reason if not.
  • For a site with no commerce platform, the handle recorded for each crawled product and the canonical URL its page declared.
SettingWhere it goes in a Next.js app
Site keyGEOFFY_SITE_KEY, read in every route and passed to <GeoffyProduct>
Revalidate secretGEOFFY_REVALIDATE_SECRET, read by createGeoffyRevalidateRoute, and by the AI visit middleware to sign its reports
Site addressNothing in your code. Geoffy derives your revalidate URL from it
Product URL patternsNothing in your code. They decide the handle you pass