Analytics APIs · 1 endpoint

Analytics APIs

Measure how your products perform across quizzes. Load recommendation counts, add-to-cart counts, and average rankings — filtered by date range, quiz, and search.

Base URL: https://api.quizell.com/api/v1

Load Products Analytics POST

Retrieves analytics for your products — recommendation counts, add-to-cart counts, and average ranking — with filtering, sorting, and pagination.

  • Filter by date range and specific quizzes.
  • Search analytics by product title.
  • Order results by recommendation count, add-to-cart count, or average ranking.
  • Paginate through large result sets.
API Configuration

Comma-separated quiz IDs, reflected in the code examples below.

Request Body Parameters
FieldTypeRequiredDescription
pageNumberNoPage number to retrieve. Default is 1.
per_pageNumberNoNumber of results per page. Default is 100.
searchStringNoSearch in product titles. Default is null.
start_dateStringNoStart of the date range in Y-m-d format, e.g. 2026-03-10. Default is null.
end_dateStringNoEnd of the date range in Y-m-d format, e.g. 2026-04-10. Default is null.
sortStringNoSort order: asc or desc. Default is asc.
order_byStringNoField to order results by: recommendation_count, add_to_cart_count, or avg_ranking. Default is recommendation_count.
quizIdsArrayNoArray of quiz IDs to limit analytics to specific quizzes.

Code Examples

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import fetch from "node-fetch";

async function loadProductsAnalytics() {
  const analyticsData = {
  "page": 1,
  "per_page": 100,
  "search": "",
  "start_date": "2026-03-10",
  "end_date": "2026-04-10",
  "sort": "asc",
  "order_by": "recommendation_count",
  "quizIds": []
};

  const response = await fetch("https://api.quizell.com/api/v1/load-products-analytics", {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      "Authorization": "Bearer ",
    },
    body: JSON.stringify(analyticsData),
  });

  if (!response.ok) {
    throw new Error(`Error: ${response.status}`);
  }

  const data = await response.json();
  console.log(data);
}

loadProductsAnalytics().catch(console.error);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
{
    "current_page": 1,
    "data": [
        {
            "id": 542828,
            "title": "Product 5",
            "add_to_cart_count": "0",
            "avg_ranking": "3.0",
            "recommendation_count": 2
        },
        {
            "id": 542825,
            "title": "Product 2",
            "add_to_cart_count": "0",
            "avg_ranking": "1.0",
            "recommendation_count": 3
        },
        {
            "id": 542826,
            "title": "Product 3",
            "add_to_cart_count": "1",
            "avg_ranking": "2.0",
            "recommendation_count": 3
        }
    ],
    "first_page_url": "https://api.quizell.com/api/v1/load-products-analytics?page=1",
    "from": 1,
    "last_page": 1,
    "last_page_url": "https://api.quizell.com/api/v1/load-products-analytics?page=1",
    "links": [
        {
            "url": null,
            "label": "« Previous",
            "page": null,
            "active": false
        },
        {
            "url": "https://api.quizell.com/api/v1/load-products-analytics?page=1",
            "label": "1",
            "page": 1,
            "active": true
        },
        {
            "url": null,
            "label": "Next »",
            "page": null,
            "active": false
        }
    ],
    "next_page_url": null,
    "path": "https://api.quizell.com/api/v1/load-products-analytics",
    "per_page": 100,
    "prev_page_url": null,
    "to": 3,
    "total": 3
}