Skip to main content
GET
/
v1
/
analytics
/
{projectId}
/
searches
Get search queries
curl --request GET \
  --url https://api.mintlify.com/v1/analytics/{projectId}/searches \
  --header 'Authorization: Bearer <token>'
{
  "searches": [
    {
      "searchQuery": "<string>",
      "hits": 123,
      "ctr": 123,
      "topClickedPage": "<string>",
      "lastSearchedAt": "<string>"
    }
  ],
  "totalSearches": 1,
  "nextCursor": "<string>"
}

Usage

Use this endpoint to export documentation search analytics. Results are ordered by hit count descending, showing which terms your users search for most. Paginate through results using the nextCursor parameter returned in the response. Continue fetching while nextCursor is not null.

Filtering

Filter search data by date range using dateFrom and dateTo parameters.

Response data

Each search term entry includes:
  • searchQuery: The search term entered by users
  • hits: Number of times this term was searched
  • ctr: Click-through rate for this search term
  • topClickedPage: The most-clicked result path for this query, if any
  • lastSearchedAt: Timestamp of the last time this term was searched
The response also includes totalSearches, which is the total count of all search events in the requested date range (sum of all hits, not distinct queries).

Authorizations

Authorization
string
header
required

The Authorization header expects a Bearer token. Use an admin API key (prefixed with mint_). This is a server-side secret key. Generate one on the API keys page in your dashboard.

Path Parameters

projectId
string
required

Your project ID. Can be copied from the API keys page in your dashboard.

Query Parameters

dateFrom
string

Date in ISO 8601 or YYYY-MM-DD format

Example:

"2024-01-01"

dateTo
string

Date in ISO 8601 or YYYY-MM-DD format. dateTo is an exclusive upper limit. Results include dates before, but not on, the specified date.

Example:

"2024-01-01"

limit
number
default:50

Max search terms per page (ordered by hit count descending)

Required range: 1 <= x <= 100
cursor
string

Opaque pagination cursor from the previous response

Response

Search term aggregates with pagination

searches
object[]
required

Search terms ordered by hit count descending.

totalSearches
integer
required

Total count of search events in the requested date range (sum of all hits, not distinct queries).

Required range: x >= 0
nextCursor
string | null
required

Opaque pagination cursor for the next page. Null if no more results.