Count page views once per load and skip known bots.
Stop auto-counting list APIs and homepage sliders, track static pages via pageKey, and add store-specials AI list matching. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
co-authored by
Cursor
parent
6517877bed
commit
b7ca306097
@@ -631,7 +631,7 @@
|
||||
"post": {
|
||||
"tags": ["Analytics"],
|
||||
"summary": "Record a storefront page view",
|
||||
"description": "Optional explicit view counter. Most page views are recorded automatically when public list/detail APIs are called (blogs, products, portfolios, videos, store-items, homepage sliders). Use this for custom pages. No auth required. Events retained ~6 months; lifetime counters kept forever.",
|
||||
"description": "Optional explicit view counter. Most page views are recorded automatically on: (1) GET website/static-images?pageKey=home → home, (2) GET static-images?pageKey=about|contact|… → static_page, (3) public detail GETs for products, user-products, blogs, portfolios, videos, store-items. List APIs and homepage sliders do not count. Known bots / empty User-Agent are skipped. Refresh counts again. Use this POST for custom pages that do not hit those endpoints. No auth required. Events retained ~6 months; lifetime counters kept forever.",
|
||||
"parameters": [
|
||||
{
|
||||
"$ref": "#/components/parameters/domain"
|
||||
@@ -649,6 +649,7 @@
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"home",
|
||||
"static_page",
|
||||
"portfolio_list",
|
||||
"portfolio_detail",
|
||||
"product_list",
|
||||
@@ -666,7 +667,7 @@
|
||||
"portfolio",
|
||||
"blog"
|
||||
],
|
||||
"description": "Canonical kinds preferred. Legacy aliases: website→home, product→product_detail, portfolio→portfolio_detail, blog→blog_detail."
|
||||
"description": "Canonical kinds preferred. Prefer home, static_page, and *_detail for page visits. Legacy aliases: website→home, product→product_detail, portfolio→portfolio_detail, blog→blog_detail."
|
||||
},
|
||||
"entityId": {
|
||||
"type": "string",
|
||||
@@ -674,7 +675,7 @@
|
||||
},
|
||||
"path": {
|
||||
"type": "string",
|
||||
"description": "Optional page path (e.g. `/`, `/blog/my-post`)."
|
||||
"description": "Optional page path (e.g. `/`, `/about`, `/blog/my-post`). Recommended for static_page."
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -683,13 +684,14 @@
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "View recorded",
|
||||
"description": "View recorded (or skipped for bots)",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"ok": { "type": "boolean", "enum": [true] }
|
||||
"ok": { "type": "boolean", "enum": [true] },
|
||||
"skipped": { "type": "string", "enum": ["bot"] }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user