Algolia Analytics API

Reports top searches, no-result searches, click and conversion rates, revenue and other search analytics aggregated from query and Insights data. One of only six Algolia APIs that returns machine-readable x-ratelimit-* response headers.

Operations 30

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /{path} Send a custom GET request to the Analytics API · Send requests to the Algolia REST API #
Ask an LLM
“Can I call an Analytics API endpoint the client library doesn't wrap yet with a raw GET?”
“Is there a generic way to read from an arbitrary Analytics API path?”
Tell an agent
Send a raw GET request to the Analytics API path {path}.
Call GET on Analytics endpoint {path} with query parameters {parameters}.
POST /{path} Send a custom POST request to the Analytics API · Send requests to the Algolia REST API #
Ask an LLM
“What's the way to POST to a new Analytics API endpoint before the SDK supports it?”
“Can I make a raw POST call to any Analytics path?”
Tell an agent
Send a raw POST request to the Analytics API path {path}.
POST to Analytics endpoint {path} passing query parameters {parameters}.
PUT /{path} Send a custom PUT request to the Analytics API · Send requests to the Algolia REST API #
Ask an LLM
“How can I send a PUT to an Analytics API path that has no dedicated method?”
“Can I replace something at a custom Analytics endpoint using a raw PUT call?”
Tell an agent
Send a raw PUT request to the Analytics API path {path}.
Issue a PUT to Analytics endpoint {path} with query parameters {parameters}.
DELETE /{path} Send a custom DELETE request to the Analytics API · Send requests to the Algolia REST API #
Ask an LLM
“How do I send a raw DELETE to an Analytics API path the client doesn't cover?”
“Can I call DELETE on an arbitrary Analytics endpoint?”
Tell an agent destructive · confirm first
Send a raw DELETE request to the Analytics API path {path}.
Issue a DELETE against Analytics endpoint {path} with query parameters {parameters}.
GET /2/searches Get the most popular search queries · Retrieve top searches #
Ask an LLM
“What are people searching for most on my site?”
“Can I rank my top searches by click-through or revenue?”
Tell an agent
Show the top searches on index {index}.
List the {limit} most popular queries on {index} from {startDate} to {endDate}.
GET /2/searches/count Count searches over a period · Retrieve number of searches #
Ask an LLM
“How many searches did my index get each day this week?”
“What's the total search volume for a date range?”
Tell an agent
Count the searches on index {index}.
Give me the daily search count for {index} between {startDate} and {endDate}.
GET /2/searches/noResults List frequent searches that returned no results · Retrieve the most frequent searches without results #
Ask an LLM
“Which queries are coming back empty for my users?”
“What are shoppers searching for that I don't carry?”
Tell an agent
List the most frequent zero-result searches on {index}.
Show the top {limit} searches with no results on {index} since {startDate}.
GET /2/searches/noClicks List popular searches that got no clicks · Retrieve top searches without clicks #
Ask an LLM
“Which searches return results that nobody clicks?”
“Where are my search results failing to engage users?”
Tell an agent
List top searches without clicks on index {index}.
Show {limit} popular queries on {index} that led to no clicks between {startDate} and {endDate}.
GET /2/searches/noResultRate Get the share of searches with no results · Retrieve no results rate #
Ask an LLM
“What percentage of my searches return zero results?”
“Is my no-results rate getting better day over day?”
Tell an agent
Get the no-results rate for index {index}.
Show the daily zero-result rate on {index} from {startDate} to {endDate}.
GET /2/searches/noClickRate Get the share of searches with no clicks · Retrieve no click rate #
Ask an LLM
“What fraction of tracked searches end without a click?”
“How has my no-click rate trended this month?”
Tell an agent
Get the no-click rate for index {index}.
Show the daily no-click rate on {index} between {startDate} and {endDate}.
GET /2/hits Get the most frequently returned search results · Retrieve top search results #
Ask an LLM
“Which records show up most often in my search results?”
“What items appear most for a particular query?”
Tell an agent
List the top search results (hits) on index {index}.
Show the most frequent hits on {index} for the query {search}.
GET /2/users/count Count unique search users · Retrieve number of users #
Ask an LLM
“How many unique users searched my site this week?”
“What's the daily breakdown of distinct searchers?”
Tell an agent
Count unique users searching index {index}.
Show daily unique searchers on {index} from {startDate} to {endDate}.
GET /2/filters List the most used filter attributes · Retrieve top filters #
Ask an LLM
“Which facets do my users filter by most?”
“What filter attributes are most common for a specific query?”
Tell an agent
List the top filter attributes used on index {index}.
Show which facets people filter by most on {index} when searching {search}.
GET /2/filters/{attribute} List the most used values for one filter · Retrieve top filter values #
Ask an LLM
“Which brands or colors do users pick most when filtering?”
“What are the most popular values for a given facet?”
Tell an agent
Show the top filter values for attribute {attribute} on index {index}.
List the {limit} most selected {attribute} values on {index}.
GET /2/filters/noResults List filters used in searches with no results · Retrieve top filters for a search without results #
Ask an LLM
“Which filter combinations lead users to empty result pages?”
“Are certain facet filters causing zero-result searches?”
Tell an agent
List the top filters used in no-result searches on index {index}.
Show filters applied to zero-result searches for {search} on {index}.
GET /2/countries List the countries with the most searches · Retrieve top countries #
Ask an LLM
“Where in the world are my searches coming from?”
“Which countries search my index the most?”
Tell an agent
List the top countries by searches on index {index}.
Show the {limit} countries with the most searches on {index} since {startDate}.
GET /2/clicks/averageClickPosition Get the average position of clicked results · Retrieve average click position #
Ask an LLM
“On average, how far down the results do users click?”
“Is my average click position improving after relevance changes?”
Tell an agent
Get the average click position for index {index}.
Show the daily average click position on {index} from {startDate} to {endDate}.
GET /2/clicks/positions Get click counts by result position · Retrieve click positions #
Ask an LLM
“How many clicks does the first result get compared to the tenth?”
“What's the click distribution across result positions?”
Tell an agent
Show clicks per result position on index {index}.
Break down clicks by position for {index} between {startDate} and {endDate}.
GET /2/clicks/clickThroughRate Get the search click-through rate · Retrieve click-through rate #
Ask an LLM
“What's the click-through rate on my search results?”
“Why is my CTR null instead of zero on some days?”
Tell an agent
Get the click-through rate for index {index}.
Show the daily CTR on {index} from {startDate} to {endDate}.
GET /2/conversions/conversionRate Get the search conversion rate · Retrieve conversion rate #
Ask an LLM
“What share of tracked searches lead to a conversion?”
“How is my search conversion rate trending day by day?”
Tell an agent
Get the conversion rate for index {index}.
Show the daily conversion rate on {index} between {startDate} and {endDate}.
GET /2/conversions/addToCartRate Get the add-to-cart rate from search · Retrieve add-to-cart rate #
Ask an LLM
“How often do searches result in an item being added to the cart?”
“Which days had the best add-to-cart rate from search?”
Tell an agent
Get the add-to-cart rate for index {index}.
Show daily add-to-cart rates on {index} from {startDate} to {endDate}.
GET /2/conversions/purchaseRate Get the purchase rate from search · Retrieve purchase rate #
Ask an LLM
“What percentage of searches end in a purchase?”
“Can I see the purchase rate per day for my store's search?”
Tell an agent
Get the purchase rate for index {index}.
Show daily purchase rates on {index} between {startDate} and {endDate}.
GET /2/conversions/revenue Get revenue attributed to search · Retrieve revenue data #
Ask an LLM
“How much revenue does my search drive?”
“What's the average order value coming from search, and what do I need to send to see it?”
Tell an agent
Get search revenue metrics for index {index}.
Show total revenue and average order value from {index} for {startDate} to {endDate}.
GET /2/status Check when analytics were last updated · Retrieve update status #
Ask an LLM
“How fresh is my analytics data?”
“Why is the analytics updated time null for a new index?”
Tell an agent
Check when analytics for index {index} were last updated.
Get the analytics update status of {index}.
GET /3/patterns/fields List the available analytics fields catalog · Retrieve the field catalog #
Ask an LLM
“Which metrics, filters and group-by fields can I use in analytics pattern queries?”
“What domain and field kind combinations are valid for the patterns endpoints?”
Tell an agent
Get the analytics field catalog.
List every metric, filter, group and distribution field available for pattern queries.
POST /3/patterns/timeseries Query analytics metrics as a daily time series · Query a metrics time series #
Ask an LLM
“Can I chart a custom analytics metric per day, split by a grouping?”
“How do I get a per-day metric breakdown for each segment of my search traffic?”
Tell an agent
Get a daily time series of {metrics} with parameters {parameters}.
Plot {metrics} over time on index {index}, one series per {groupBy}, using {parameters}.
POST /3/patterns/scalar Get single aggregate analytics totals · Query single-row aggregates #
Ask an LLM
“How do I get one total number for a metric over a whole period?”
“Can I aggregate several analytics metrics into a single summary figure?”
Tell an agent
Compute period totals for {metrics} with parameters {parameters}.
Give me a single aggregate of {metrics} on {index}, filtered by {filters}, using {parameters}.
POST /3/patterns/table Query analytics as a grouped, sorted table · Query a grouped table #
Ask an LLM
“Can I build a table of analytics metrics grouped by a dimension and sorted?”
“Do I need an orderBy when grouping analytics rows?”
Tell an agent
Build a table of {metrics} grouped by {groupBy}, ordered by {orderBy}, with {parameters}.
Return up to {limit} rows of {metrics} for index {index} using {parameters}.
POST /3/patterns/distribution Get histograms of numeric analytics fields · Query a numeric distribution #
Ask an LLM
“How are values like hit counts distributed across my searches?”
“Can I bucket a numeric analytics field into a histogram?”
Tell an agent
Build histograms for {distributions} with parameters {parameters}.
Bucket {distributions} into bins on index {index}, filtered by {filters}, using {parameters}.
GET /setClientApiKey Switch the API key the Analytics client uses · Switch the API key used to authenticate requests #
Ask an LLM
“Can I change which API key my Analytics client authenticates with?”
“Is it possible to rotate the key used for analytics reporting calls at runtime?”
Tell an agent
Switch the Analytics client to authenticate with API key {apiKey}.
Use {apiKey} as the key for subsequent Analytics requests.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/algolia:algolia-analytics-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

algolia-analytics-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Analytics API
  summary: The Analytics API gives you access to metrics related to your Algolia search experience
  description: '## Base URLs


    Base URLs for the Analytics API:


    - `https://analytics.us.algolia.com`

    - `https://analytics.de.algolia.com`

    - `https://analytics.algolia.com` (alias of `analytics.us.algolia.com`)


    Use the URL that matches your analytics region.'
  version: 2.0.0
servers:
- url: https://analytics.{region}.algolia.com
  variables:
    region:
      description: The region where your Algolia application is hosted.
      enum:
      - us
      - de
      default: us
- url: https://analytics.algolia.com
security:
- appId: []
  apiKey: []
tags:


# --- truncated at 32 KB (95 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/algolia/refs/heads/main/openapi/algolia-analytics-api-openapi.yml