The Visitor Activities endpoint returns recorded activity entries for a specific visitor UID.
Endpoint
- URL:
/wp-json/personalizewp/v1/visitor-activities - Method:
POST - Content type:
application/json
Request body
| Parameter | Type | Required | Notes |
|---|---|---|---|
uid | string | Yes | The visitor ID |
filters | object | No | Optional filter object |
The current implementation supports these filter keys:
idactivity_typeurlobject_idobject_type
Important: filters must be a single object, not an array of filter objects.
Response shape
{
"success": true,
"data": [
{
"id": 123,
"activity_type": "post",
"url": "/shop/product-a/",
"object_id": 456,
"object_type": "product",
"lead_score": 0,
"created": "2026-04-15 10:00:00"
}
]
}
Example
async function fetchVisitorActivities(uid) {
const response = await fetch(
`${window.pwpSettings.root}personalizewp/v1/visitor-activities`,
{
method: "POST",
headers: {
"Accept": "application/json, */*;q=0.1",
"Content-Type": "application/json",
"X-PWP-Auth-Token": window.pwpSettings.apiToken
},
body: JSON.stringify({
uid,
filters: {
activity_type: "post",
object_type: "product"
}
})
}
);
const result = await response.json();
return result.success ? result.data : [];
}
Notes
- Product views are stored as
activity_type: "post"withobject_type: "product" - The response wrapper is
{ success, data } - The current endpoint does not paginate results