v1Resources/AEO/getList a website's tracked AEO prompts

List a website's tracked AEO prompts

Returns the prompts tracked for one website entity and what the next check will measure: active and paused counts, the limits, the set revision to send with a change, an approximate per-check workload and the check schedule. Read-only: it never starts a check or spends credits. Prompt tracking is for website entities only — a physical location you can see is 422 entity_type_not_supported — and needs the website entities feature for your agency (403 feature_disabled otherwise). The token acts as the person who issued it, in this agency: their AEO page access and client visibility apply, a client-restricted token is narrowed to its clients, and a website outside that reach is 404. Reading keeps working when prompt management is switched off for the agency; canEdit is then false. Until the first saved change, a website shows its cached existing prompt list as imported prompts (managed false, origin existing): their provenance is unknown, and they may not match what any report measured.

get/api/v1/aeo/prompts
aeo:read
Query parameters
locationIdstringrequired
The website entity's location id. A website you can't see, or one that doesn't exist, is 404; a physical location is 422 entity_type_not_supported.
statusstring (all | active | paused)optional
As a list filter: all (default), active or paused; any other value lists all. In an update: active to resume the prompt, paused to pause it. A paused prompt stays in the set but is left out of checks.
Response
dataobjectoptional
locationIdstringoptional
The website entity's location id.
namestringoptional
The website's name.
eligibleboolean (true)optional
Always true: only a website entity has a tracked prompt list.
canEditbooleanoptional
Whether the token's issuing person can change this set right now: they hold the Manage AEO prompts permission, prompt management is switched on for the agency, and the earlier prompt list needs no reconciliation.
managedbooleanoptional
false while the website still uses its cached existing prompt list (shown as imported prompts of unknown provenance); true from the first saved change.
revisionintegeroptional
The set's revision, raised by every saved change. Send it as expectedRevision, or in If-Match on DELETE.
maxActiveintegeroptional
The most prompts that can be active at once (16).
maxLengthintegeroptional
The longest a prompt may be, in characters (500).
countsobjectoptional
Number of active and paused prompts.
activeintegeroptional
pausedintegeroptional
itemsarray of objectoptional
The prompts in set order, filtered by the status parameter.
idstringoptional
Unique identifier for the prompt.
textstringoptional
The prompt's wording. In a check or history entry, the wording that check measured.
normalizedTextstringoptional
The wording trimmed, whitespace collapsed and lowercased: the key used to detect duplicates.
wordingVersionintegeroptional
The wording's version: 1 when created, one higher after every wording change. Send it back as expectedWordingVersion.
statusstring (active | paused)optional
active (measured by the next check) or paused (kept, but left out of checks).
originstring (existing | custom | generated | integration)optional
Where the prompt came from: existing (imported from the website's earlier prompt list, provenance unknown), custom (added in the app), generated, or integration (added through the API or MCP).
createdViastring (ui | api | mcp | import)optional
How the prompt was created: ui, api, mcp, or import.
createdByUserIdstringoptional
The person who created the prompt, or null when unknown (imported prompts).
updatedByUserIdstringoptional
The person who last changed the prompt, or null when unknown.
positionintegeroptional
The prompt's place in the set's order.
createdAtstringoptional
When the prompt was created, as an ISO 8601 timestamp.
updatedAtstringoptional
When the prompt was last changed, as an ISO 8601 timestamp.
deletedAtstringoptional
When the prompt was removed, or null. Removed prompts are not listed but stay in the checks that captured them.
latestobjectoptional
The latest usable result for the current wording, from a settled complete, partial or failed check, or from a provably matching imported legacy wording: state checked with at, measured and expected. A held check stays in history and does not advance it. Otherwise state not_checked, including right after an edit.
statestring (not_checked | checked)optional
atstringoptional
When that check settled, as an ISO 8601 timestamp.
measuredintegeroptional
How many engines gave a usable answer for this wording.
expectedintegeroptional
How many engines were selected for that check.
editedbooleanoptional
Whether the wording has changed since the prompt was created.
workloadobjectoptional
Approximately what one check of the active prompts involves. Reading it costs nothing, and saving prompts spends no credits.
activePromptsintegeroptional
Active prompts the next check would measure.
enginesarray of stringoptional
The AI engines a check queries.
answerChecksintegeroptional
Active prompts × engines: the answers one check asks for. A count, not credits.
estimatedCreditsnumberoptional
Approximate credits for one check of the active prompts, from your agency's credit rates. null when the rate is unknown or more than 16 prompts are active — unknown, not zero. An estimate, not a charge.
creditsPerPromptnumberoptional
Approximate credits per prompt across all engines, or null when unknown.
approximateboolean (true)optional
Always true: the workload figures are estimates.
scheduleobjectoptional
The website's current AEO check schedule. Changing prompts does not change it.
frequencystring (weekly | monthly | quarterly | never)optional
How often checks run: weekly, monthly, quarterly, or never.
nextRunAtstringoptional
When the next scheduled check is due, as an ISO 8601 timestamp, or null when the frequency is never or checks haven't started for this website.
activatedbooleanoptional
Whether checks have started for this website (a first check was started or a report exists). Saving prompts does not start them.
checkInFlightbooleanoptional
Whether a check is queued, running or held for this website right now. That check keeps the prompts it captured; changes apply from the next one.
listChangedSinceReportbooleanoptional
Whether the active prompts differ from those the current report measured, so the report does not reflect the current list yet.
needsReconciliationbooleanoptional
Whether the website's earlier prompt list has malformed or duplicate entries. Until support reconciles it, changes are 409 legacy_prompts_need_reconciliation.
Errors
401Missing, invalid, expired, or revoked API key.
403The key lacks the required scope, or isn't authorized for this client/location.
404The resource wasn't found, or doesn't belong to your agency.
422The request is missing a required parameter or is otherwise malformed.
429Too many requests. Retry after the number of seconds in the Retry-After header.
503The service is temporarily unavailable. Follow the retry guidance for this operation.
get/api/v1/aeo/prompts
Your API key
locationId *
status
{}

Guides that use this resource