Your Search Console rows, by day
Your own retained Search Console rows for one selected property, aggregated by date × page (or date × page × query with dimensions=page,query,date). Rows always carry date, never day. Read-only and additive: no Google request, no pull, no write. Every row is filtered to your account and the exact property. Aggregation uses the real page × query grain only (page and query non-empty, all-device, all-country): clicks and impressions are summed, ctr is sum(clicks)/sum(impressions) (0 with no impressions) and position is the impression-weighted sum(position*impressions)/sum(impressions) (null with no impressions) — CTRs and positions are never averaged unweighted. An empty rows array means no retained rows for the window, never zero-filled days. Coverage is honest, not complete: Google returns only its top rows per request and the pull stops after four pages per chunk, so anonymized queries and capped rows are absent. pulled_through is the last day actually pulled; last_pulled_at is the most recent recorded pull attempt for the property, which may itself have failed, so neither claims the window is complete. These are observed search metrics; they do not show that any link or placement caused a change. Read with a customer key (read scope) or a dashboard session; the operator token is refused, and any Authorization header (even empty or whitespace) is answered by key authentication rather than a session. Errors and successes are private and no-store, and private URLs, queries and rows are never logged.
Request
- Base URL: https://api.placementapi.com
- URL: https://api.placementapi.com/v1/gsc/daily
- Auth: HTTP bearer
Query parameters
The Search Console property to read, exactly as Google names it (e.g. sc-domain:example.com). It must be visible to your connection and selected for pulling, else 403 property_not_selected.
Inclusive start day, YYYY-MM-DD.
Inclusive end day, YYYY-MM-DD. from and to may be at most 180 days apart.
Exact page URL to filter to. Repeat for several (at most 100); the exact spelling is preserved and duplicates are collapsed.
page,date sums each page's queries together; page,query,date keeps the query column.
Opaque continuation cursor from next_cursor. It carries only the last group's day and an internal decimal id, is bound by hash to the account and the full filter set, and is only a position marker (never an authorization credential, and never a copy of a page URL or query). A cursor for another account, a changed filter set or a date outside the requested window is refused with 400 bad_cursor. Re-authorisation and property selection are re-checked on every request.
Response
OK
Changes
No recorded changes to this operation across all 1 revision of this API.