Read the Docs provides full-text search across all of the pages of all projects, this is powered by Elasticsearch. You can search all projects at https://readthedocs.org/search/, or search only on your project from the Search
tab of your project.
We override the default search engine of your project with our search engine to provide you better results within your project. We fallback to the built-in search engine from your project if our search engine doesn't return any results, just in case we missed something
We offer a number of benefits compared to other documentation hosts:
- Search across
subprojects </subprojects>
Subprojects allow you to host multiple discrete projects on a single domain. Every project hosted on that same domain is included in results for search.
- Search results land on the exact content you were looking for
We index every heading in the document, allowing you to get search results exactly to the content that you are searching for. Try this out by searching for "full-text search".
- Full control over which results should be listed first
Set a custom rank per page, allowing you to deprecate content, and always show relevant content to your users first. See
config-file/v2:search.ranking
.- Search across projects you have access to ()
This allows you to search across all the projects you access to in your Dashboard. Don't remember where you found that document the other day? No problem, you can search across them all.
- Special query syntax for more specific results.
We support a full range of search queries. You can see some examples in our
guides/searching-with-readthedocs:search query syntax
guide.
Know what your users are looking for in your docs. To see a list of the top queries and an overview from the last month, go to the Admin
tab of your project, and then click on Search Analytics
.
Search is exposed through our API that's proxied from the domain where your docs are being served. This is https://docs.readthedocs.io/_/api/v2/docsearch
for the docs
project, for example.
If you are using private versions <versions:privacy levels>
, users will only be allowed to search projects they have permissions over. Authentication and authorization is done using the current session, or any of the valid sharing methods </commercial/sharing>
.