List a page's generation runs
Returns the runs that asked for starter questions from this page, newest first, up to `limit`. Each run says how it ended and why, and which catalog record served as evidence. It carries nothing about cost or usage.
Authorization
ApiKeyAuth A WorkOS org-scoped API key, created from the dashboard's organization settings page. Identifies the tenant every read and write is scoped to. Missing, malformed, unknown, revoked, expired, or non-organization-owned keys all return 401 (no distinction, so the response can't be used to probe which keys or org ids exist).
In: header
Path Parameters
The site id (prefixed site_). A site id that isn't yours is a 404, same as any other cross-tenant id.
The page id (prefixed spg_).
Query Parameters
The page size, 1 to 100.
1 <= value <= 10050Response Body
application/json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
curl -X GET "https://example.com/api/v1/sites/string/pages/string/generations"{ "data": [ { "id": "spgr_01kvnwmagvf27rc9cze5rm9e1r", "trigger": "requested", "outcome": "written", "reason": null, "catalogReason": null, "catalogRecordTitle": "Trail shoe", "catalogRecordId": "gid://shopify/Product/8123", "candidates": 6, "questionsWritten": 3, "createdAt": "2026-10-03T09:00:00.000Z", "finishedAt": "2026-10-03T09:00:12.000Z" } ]}Delete a page
Removes the page. The starter questions it produced stay in the library, with no source page. A page a sitemap import or shopper traffic found leaves its address as an exclusion, so discovery does not add it again; remove the exclusion to let it come back. Returns the id and a deleted flag.
Import pages from the sitemap
Starts a sitemap import for the site and answers at once with the import. The import runs in the background: it finds the sitemap (the given address, else robots.txt, then the usual places), reads it within size bounds and adds the pages it lists as `discovered`, within the site's page limit and its exclusions. Discovered pages are read only on request or by automatic reading. Follow the import at `GET .../pages/imports/{importId}`. A sitemap address that is not on the site is refused with `sitemap_not_on_site` and no request is made to it; a second import while one runs is refused with `discovery_already_running`. The answer is `202` when the import was handed to the background, and `200` with the import closed as `failed` when it could not be started. Recorded in the audit log, attributed to the API key.