seo: noindex stale api-reference/introduction and redirect it to v2 - #1242
Draft
claude[bot] wants to merge 1 commit into
Draft
seo: noindex stale api-reference/introduction and redirect it to v2#1242claude[bot] wants to merge 1 commit into
claude[bot] wants to merge 1 commit into
Conversation
The v1-era /api-reference/introduction page is not in any navigation but is still indexed and outranks the current API reference intro in Google. - Add `noindex: true` to api-reference/introduction.mdx frontmatter (file kept — repo convention is redirect-never-remove). - Point /api-reference/v1-introduction straight at /api-reference/v2-introduction to avoid a two-hop redirect chain. - Redirect /api-reference/introduction to /api-reference/v2-introduction. - Redirect the bare /api-reference path to /api-reference/v2-introduction (it had no redirect before). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VuaELk6Vyh3jWSvPPTTFqc
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requested by Rak Ramprakash · Slack thread
Before / After
Before: Googling "firecrawl docs" can land you on
docs.firecrawl.dev/api-reference/introduction— a stale v1-era API reference intro that still features the deprecated Extract endpoint. The page is in no navigation group, but it has nonoindex, no canonical, and nothing redirecting off it, so Google keeps serving it above the real API reference intro. Rak hit this from a plain Google search today.After: That URL redirects to the current reference intro (
/api-reference/v2-introduction) and is markednoindex, so it drops out of the index on the next crawl.How
Two files:
api-reference/introduction.mdx— addednoindex: trueto the frontmatter. The file itself stays; the repo convention is redirect-never-remove. Frontmatter style matchesv1-welcome.mdx, which already carrieshidden: true+noindex: true.docs.json(redirects array) — three changes, all landing on/api-reference/v2-introduction:/api-reference/v1-introduction/api-reference/introduction/api-reference/v2-introduction/api-reference/introduction/api-reference/v2-introduction/api-reference/api-reference/v2-introductionRetargeting the first one avoids a two-hop redirect chain. The bare
/api-referencepath had no redirect at all before this — verified against the full 117-entry array.Checks run before pushing:
docs.jsonparses cleanly under bothnode -e "JSON.parse(...)"andpython3 -m json.tool.sourcevalues anywhere in the redirects array (117 → 119 entries, zero collisions)./api-reference/introductionas a destination.{ "destination": ..., "source": ... }entries.One thing reviewers should confirm on the preview deploy
In Mintlify, a redirect whose
sourcematches an existing page file may not fire — the page can win over the redirect. That is exactly why thenoindexon the file is here as well as the redirect: if the redirect is shadowed, thenoindexstill de-indexes the page; if the redirect fires, the page is unreachable anyway. Please confirm on the preview deploy which one actually takes precedence for/api-reference/introduction. If the redirect does not fire, this PR still solves the SEO problem, but the stale content stays reachable and we may want a follow-up.Locale copies — deliberately not touched
All five non-English locale trees do have their own copy:
es/,fr/,ja/,pt-BR/, andzh/each containapi-reference/introduction.mdx, and none of them carriesnoindextoday.They were not edited here, because
CLAUDE.mdstates that localized files must not be modified directly — translations are managed separately by the Locadex pipeline. There is good evidence the flag propagates on its own: every locale copy ofv1-welcome.mdxalready carrieshidden: true+noindex: true, inherited from the base file, sonoindexis a frontmatter key the translation pipeline does carry through. The locale pages should pick this up on the next translation run.Flagging it explicitly in case a maintainer wants them updated in this PR instead — happy to add them if the pipeline assumption is wrong.
Follow-up (not part of this PR)
The broader v1 de-indexing sweep is deliberately out of scope here, but worth filing:
noindextoday. Concretely: 0 of the 109.mdxfiles acrossv1/,v0/, andapi-reference/v1-endpoint/. They are only hidden from the navigation, which does not prevent crawling — hidden-from-nav and non-indexable are different things, and this PR's page is the proof.docs.jsonis not a safe proxy for "deprecated": the hiddenExtract Endpointsgroup re-lists live v2 slugs (api-reference/endpoint/extract,api-reference/endpoint/extract-get), so de-indexing by nav group would take out current pages.Note on timing
Merging this will not change the Google result immediately — Google needs to recrawl the URL before the stale page drops out. We have Search Console access (there is a
google-site-verificationtoken indocs.json), so the recrawl can be requested manually once this ships, rather than waiting for the organic crawl.Generated by Claude Code