---
title: "Summary"
method: GET
path: "/api/ratings/summary"
tags: ["ratings"]
---

# Summary

`GET /api/ratings/summary`

## Request

- Base URL: `https://api.scanforai.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.scanforai.com/api/ratings/summary`
- Auth: none declared

The published counters. ONE ROW BY PRIMARY KEY — no scan, no dedupe, no
policy. All of that happened in services/ratings_build when the row was built.

Which row is served is a SETTING (`ratings_public_key`), currently `public_all`
— every channel, imports included. The alternative is `public_web`, our own
channels only.

That choice matters the day the JSON-LD goes live: presenting another platform's
reviews inside your own aggregateRating is what earns a manual action. It is
inert today because ratings_markup_enabled is off and nothing is rendered.

## Query parameters

- `lang` string

## Headers

- `X-UI-Lang` string

## Response `200`

Successful Response

- unknown

---

[API](https://skmtc.dev/scanforai/apis/scanforai-api.md) · [All operations](https://skmtc.dev/scanforai/apis/scanforai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/scanforai/apis/scanforai-api/revisions/ab5d27f4ae13?raw)
