Back to Support
features

Importing a Content Spy Crawl

Bring crawled marketing pages into your knowledge base and generate a Website and Content Strategy artifact.

Content Spy is a TurnkeyGTM sidecar that crawls a marketing site and reviews every page. This article covers the bridge from that crawl into your TurnkeyGTM knowledge base, and the strategy artifact you can generate from it.

The bridge is available only in a local or self-hosted setup today: the Content Spy service runs on the same machine as the TurnkeyGTM API and is reached through a server-side setting (CONTENTXD_API_URL). If you do not see the Content Spy crawl card on the Upload page, your deployment has not enabled it.

Importing a crawl

  1. Crawl the site in Content Spy first. The import reads what Content Spy has already stored; it does not crawl anything itself.
  2. Open Upload in TurnkeyGTM and find the Content Spy crawl card.
  3. Enter the target slug you registered in Content Spy (the default is turnkeygtm).
  4. Leave Include competitor findings on if you want conquest-audit claims about competitors indexed as well.
  5. Click Import crawl.

The result line shows how many pages were fetched, how many were newly indexed, and how many were already indexed. Re-running the import after a fresh crawl is safe: pages whose content has not changed are reported as already indexed and are not processed twice.

Pages that returned an HTTP status other than 200, or that had no readable text, are skipped.

What gets indexed

Each crawled page becomes a document in your knowledge base, tagged contentxd and target:<slug>, plus one embed:<vendor> tag per third-party script or embed the page carries. The document text is a structured projection of the page:

  • the title and a metadata block (URL, HTTP status, crawl time, composite score, word count, embeds, H1, meta description);
  • the page's headings and calls to action;
  • the body text;
  • the reviewer findings for that page, each with its severity, lane, and evidence quote.

From there the normal ingestion pipeline runs: the document is chunked, embedded, and mined for entities exactly as an uploaded file would be. In Knowledge, every document, chunk, and entity from a crawl carries the crawled page URL as its source, so citations in chat and artifacts link straight to the live page.

Competitor findings (conquest claims) are indexed as separate documents categorised as competitive intelligence, tagged conquest-claim and competitor:<name>, with the competitor page as the source URL.

Generating the Website and Content Strategy artifact

The strategy artifact is produced by the same synthesis endpoint that builds Product Insights from GitHub issues, using a different blueprint. There is no form for it yet; call the API directly with your session token:

curl -X POST "$NEXT_PUBLIC_API_URL/api/v1/context/<orgId>/synthesize" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "provider": "contentxd",
    "blueprint": "website-content-strategy",
    "extra_tags": ["source:contentxd:turnkeygtm"]
  }'

Wait until the imported documents have finished processing before calling it; the endpoint needs at least three extracted entities to work with.

The response contains a parent artifact id and, for larger crawls, one child artifact per theme. In the Artifacts gallery they appear as summaries tagged blueprint:website-content-strategy and contentxd. Each theme is a strategy pillar (messaging gaps, CTA consistency, capability coverage, evidence strength, page-level fixes, information architecture) with a weight, a suggested page or content change, and numbered citations that link to the crawled pages the theme was drawn from.

Refining it in chat

Open the parent or any child artifact and use Refine in Chat. The conversation is bound to that artifact, so you can ask for a rewrite of one pillar, a tighter action list, or a version aimed at a specific persona, and save the result as a new version. Because the crawl is indexed in your knowledge base, chat can also pull in evidence from other pages and sources when you ask it to.

Still need help? Contact our support team