Create Tracking Snapshot
Capture a point-in-time snapshot of rankings and LLM citations for later diff computation.
POST
Captures a stateful snapshot of the brand's current Google rankings (up to 200 keywords) and per-platform LLM citation counts. Snapshots are the input to GET /track/brands/{brand_id}/changes?since= for computing deltas over time.
Path parameters
brand_idstringrequiredThe brand UUID.
Request body
None.
Response
{
"brand_id": "ea502f67-338b-47e4-a245-5c4eea8bd8d2",
"snapshot_id": "snap-uuid",
"created_at": "2026-04-07T10:00:00Z",
"rankings_count": 127,
"citations": {
"chat_gpt": 24,
"google": 10
}
}
Field notes
| Field | Description |
|---|---|
snapshot_id | UUID of the stored snapshot |
rankings_count | Number of ranked keywords captured (up to 200) |
citations | Per-platform citation counts at capture time. Keys match DataForSEO's sources_platform.key. |
Example
curl -X POST \
-H "X-API-Key: $BM_API_KEY" \
https://api.boringmarketing.com/track/brands/$BRAND_ID/snapshot
Snapshot before and after publishing any new content — the difference tells the learning loop what the content actually moved. A good rhythm is: snapshot on publish, snapshot at 7 days, snapshot at 30 days. Use GET /track/brands/{id}/changes?since=<publish_timestamp> to compute deltas between them.