Queryless Proxy Strategy (/queryless)
Queryless Proxy Strategy (/queryless)
This document defines DataHub's integration policy for proxied Queryless pages.
Goals
- Keep Queryless reachable at
datahub.io/queryless. - Preserve login reliability for Queryless auth flows.
- Keep attribution/analytics unified from DataHub entry points.
- Prevent SEO duplication between proxied app subpaths and Queryless origin.
Routing
middleware.tsrewrites/querylessand/queryless/*tohttps://querylessai.com.- Forwarded headers are explicitly set on proxied requests:
X-Forwarded-HostX-Forwarded-ProtoX-Forwarded-For(pass-through when present)
- Auth-related routes are explicitly redirected to Queryless origin:
/queryless/api/auth/:path*->https://querylessai.com/api/auth/:path*/queryless/auth/:path*->https://querylessai.com/auth/:path*/queryless/login->https://querylessai.com/login/queryless/signup->https://querylessai.com/signup
Reason: cross-domain cookie behavior is brittle with pure proxying; auth routes are safer on origin.
Analytics Attribution
- All DataHub-owned Queryless links use
buildQuerylessHref(...)fromlib/front/queryless.ts. - Default UTM parameters:
utm_source=datahub.ioutm_medium=referralutm_campaign=datahub_ai
- Campaign can be overridden per placement (e.g. banner).
- First-party click events are emitted as
queryless_clickfrom key placements (nav, dropdowns, and top banners). UTMs remain secondary attribution.
Canonical / Indexing Policy
/querylesssets canonical link header tohttps://datahub.io/queryless./queryless/:path*setsX-Robots-Tag: noindex, follow.
Reason: keep the main integrated entrypoint indexable while avoiding duplicate indexing of proxied app internals.
Cross-Repo Action (Queryless Site)
To make canonical ownership explicit, update Queryless homepage (querylessai.com) in the Queryless repo:
- Either set canonical to
https://datahub.io/queryless - Or set homepage to
noindex
Do not allow both homepages to compete for the same intent.