This article covers two things: connecting a client's website so you can publish to it, and fetching and crawling the website so AI Memory can learn from it. It's written for agency staff and the web developers who help them. For the full steps, see Connecting a website: the connection handler step by step and How the sitemap is retrieved.
Connecting a website
When you click Test Connection on the connection form, the result appears below the form. A successful test says "You can now connect your site to the app." A failed test adds "Please fix the connection issues before attempting to connect."
"Please enter a valid URL"
What it means: The website address is missing or not a full URL.
What to do: Enter the full address including https://, for example https://www.example.com.
"Please test the connection first and ensure it is successful before connecting."
What it means: You clicked connect before a successful test.
What to do: Click Test Connection, fix any error it shows, and connect only after the test succeeds.
WordPress: "The provided URL does not seem to be a valid WordPress site."
What it means: The test couldn't reach the WordPress REST API at /wp-json on this address.
What to do:
Check the URL is the WordPress site itself, not a page on it, and uses the right
https://andwwwform.Open
https://your-site/wp-jsonin a browser. It should show data, not an error or a login page.If it's blocked, ask the site's developer to allow the REST API (security plugins and firewalls often block it). This can also happen if Cloudflare challenges (or similar bot-protection/firewall services) are intercepting requests to
/wp-json— ask the developer to whitelist that path.
See Connecting a WordPress site and Required technical access (before you start).
WordPress: "Authentication failed. Please check your credentials."
What it means: WordPress rejected the username and password.
What to do: Use the WordPress username (not the email address, if they differ) and an application password created for that user, not the normal login password. Copy the application password exactly, including spaces if WordPress shows them.
WordPress: "Unexpected response from WordPress. Status: ..."
What it means: The credentials were accepted, but WordPress refused to create a test draft post. The test creates a draft and deletes it straight away. A status such as 403 usually means the user isn't allowed to create posts.
What to do: Give the WordPress user a role that can create and publish posts (for example Editor or Administrator), or ask the developer to check security rules for the REST API.
"Failed to connect to WordPress", "Failed to connect to Webflow", "Failed to connect to Craft CMS" or "Failed to connect to Odoo"
What it means: The test couldn't reach the site at all. Common causes are a typo in the address, a site that's offline, or a firewall blocking the request.
What to do: Check the address opens in a browser, then test again. If the site is behind a firewall, see Required technical access (before you start).
Webflow: "Authentication failed. Please check your API key."
What it means: Webflow rejected the API token.
What to do: Create a new API token in the Webflow site settings with access to CMS collections, paste it in, and test again. See Connecting a Webflow site.
Webflow: "Unexpected response from Webflow. Status: ..."
What it means: The token works, but the test couldn't read the collection. This usually means the collection ID is wrong or the token has no access to it.
What to do: Check the site ID and collection ID for the blog collection, and that the token belongs to the same site.
Drupal: Test Connection fails
What it means: The test checks that the site's JSON:API is reachable, that the username and password work, and that the user can create an article. It fails if the JSON:API module isn't enabled, the credentials are wrong, or the user lacks permission to create content.
What to do: Ask the site's developer to enable the JSON:API module, check the credentials, and give the user permission to create articles. See Connecting a Drupal site.
Craft CMS: "Authentication failed. Please check your token."
What it means: Craft rejected the GraphQL token.
What to do: Copy the token again from the Craft control panel and test again. See Connecting a Craft CMS site.
Craft CMS: "GraphQL token has insufficient permissions for content creation."
What it means: The token can read content but can't create entries. The test tries to create a test entry and deletes it straight away.
What to do: Edit the token's GraphQL schema in Craft so it can create and save entries in the blog section.
Craft CMS: "Failed to connect to Craft CMS GraphQL endpoint."
What it means: The site answered, but not as a working GraphQL API.
What to do: Check that the GraphQL API is enabled and reachable at /api on the site.
Odoo: "Authentication failed. Please check your credentials."
What it means: Odoo rejected the database name, username or API key.
What to do: Check all three. The database name must match exactly. See Connecting an Odoo site.
Odoo: "Authentication successful but user does not have access to blog posts."
What it means: The login works, but the Odoo user can't read blog posts.
What to do: In Odoo, give the user "Website/Blog" permissions, then test again.
Fetching the sitemap
These messages appear on the Sitemap tab in AI Memory.
"No sitemap found, and the fallback crawler couldn't discover any pages"
What it means: No XML sitemap was found for the website, and crawling the site by following links found no pages either.
What to do:
Check the website opens in a browser and isn't password protected or in maintenance mode.
Enter the exact sitemap URL (for example
/sitemap.xmlor/page-sitemap.xml) and click Save & Fetch.If the site blocks bots, ask the developer to allow the UP-TO-DATE crawler. See Required technical access (before you start).
"No pages found at this sitemap URL" or "No pages found"
What it means: The sitemap URL was reached, but it lists no pages.
What to do: Open the sitemap URL in a browser. If it's a sitemap index, use one of the sitemaps it links to, or add several. Check for a typo in the URL.
"This sitemap lists ... pages, but none of the ... we checked exist"
What it means: The sitemap lists pages, but every page that was checked returned "not found". Nothing was imported. This protects you from crawling thousands of dead pages.
What to do: If the site has moved, update the sitemap URL. If the sitemap is a data feed rather than the website's page list, use the site's real page sitemap instead.
"Fetch failed"
What it means: The sitemap couldn't be downloaded. The reason, when known, appears instead of this text.
What to do: Check the sitemap URL opens in a browser, then use Re-fetch sitemap (the refresh icon).
"Failed to save sitemap URL", "Failed to start crawl", "Couldn't start crawl" or "Failed to start re-crawl"
What it means: The request didn't go through. This is usually temporary. It also happens when you only have view access to the memory.
What to do: Reload the page and try again. If you see the view-only banner, ask for edit access; see Troubleshooting: AI Memory.
"Large catalog: a sample per category is crawled, the rest are fetched on demand"
What it means: This isn't an error. For very large catalogues, only a sample of pages per category is crawled up front. The AI looks up other items when it needs them.
What to do: Nothing.
Approving the crawl
"Not approved yet, no products or services were found"
What it means: You clicked Approve, but none of the crawled pages were classified as a product or a service. The message says either that nothing has been crawled yet, or how many pages were read. This usually means only part of the site was found.
What to do:
Click Look for more sitemaps to find sitemaps the site links to, then crawl again.
Check the page types in the list and correct pages that are really products or services.
If the company truly sells neither, click the approve anyway button.
See Approving a website crawl.
"Could not approve the result"
What it means: The approval didn't save.
What to do: Reload the page and click Approve again. You need edit access to the memory.
The Memory column in Accounts stays on "To verify"
What it means: The crawl finished, but nobody has approved the result yet. The status only changes to Ready after approval.
What to do: In Accounts, open Companies, click the To verify status to review the result, and click Approve on the Sitemap tab. If the status is In progress, the crawl is still running; check back later.