Diagnose the feature and request that failed. A visible launcher does not prove answer generation, and an empty search result does not prove a page was never published. Use a short non-sensitive question whose answer appears on the intended site.
Widget loading and appearance#
On hosted pages, confirm the actual live deployment and platform-generated settings. Do not add another embed script to repair missing injection. Local Astro previews do not receive the deployed integration automatically.
For an external website, define window.aeoSettings before loading https://app.answer.cloud/embed.js. Check the actual organization/site IDs, chat.enabled: true, script response, browser errors, and any content-security restrictions.
If the theme is missing, fetch the absolute css_path, confirm the asset shipped, and check both launcher and iframe. Scope CSS to widget hooks so it does not restyle the host website. The hosted configuration tool replaces its config when supplied; an omitted existing setting may have been cleared.
Retrieval versus answer generation#
| Observation | Next check |
|---|---|
No relevant get_pages titles |
Published page state, indexing warnings, correct site target, and chat-content allowance. |
| Relevant titles but message request fails | Inspect generation response/status and contact support for a persistent backend failure. |
| Answer is stale or wrong | Compare current published content, references, eligible pages, and the exact question. |
| Wrong site's references | Verify site ID/origin and selected organization; do not guess identifiers. |
A successful retrieval request does not establish a working answer. If /api/messages fails while retrieval works, repeatedly redeploying unchanged HTML is not a demonstrated fix. Preserve the time, safe error details, and affected site for support.
Form submissions#
Check native required/email validation and ensure each intended field has a name. The managed handler omits disabled, password, file, hidden, unchecked, unnamed, and button controls. Repeated names become arrays.
For HTTP 422, inspect the returned validation message: forms need 1–50 fields, bounded names/values, and at least one nonempty value. Unknown targets or conflicting managed-site context can produce 404.
Controls are disabled while pending and restored afterward; input values remain. A network error can happen after saving. Check the site's inbox before submitting again when duplicates matter. An accepted form queues notifications and can return a fallback acknowledgment if AI generation fails. Inbox capture, AI quality, and email delivery are separate checks.
Site search#
Confirm entitlement first: new standalone Free sites require Pro for search. Check site_search.enabled, real selectors/elements, the query, and published/indexed content. Test a distinctive term and a paraphrase, then follow returned links. Do not equate ranking scores with answer confidence.
Verify the final launcher, keyboard focus, narrow-screen layout, completed exchange, clear/close/reopen behavior, form status, and search error/empty states as applicable. An HTTP-only diagnostic leaves those visual controls unverified.
Continue with embed settings, public interfaces, and reporting/search tools.