Pular para o conteúdo

Indexing error codes

Atualizado em Ver como Markdown

After AI Search accepts an upload, sync, or crawl request, it processes your content in the background so it can be searched. When processing fails, AI Search records one of the error codes on this page. Some errors affect a single item; others pause the whole instance.

Because this processing happens after the request succeeds, the errors are not returned in the original API response. To find them, check item logs, item details, or instance stats. Errors returned immediately when a request fails are documented separately in API error codes.

How errors are returned

Indexing errors are asynchronous: an upload, sync, or crawl request can succeed, then the content can fail later while AI Search processes it. They fall into two categories:

  • Item-level errors affect a single item. The item moves to status: "error" while the rest of the instance keeps indexing.
  • Instance-level errors affect the whole instance. AI Search pauses indexing because the problem, such as a source, token, model, or limit issue, blocks every item.

To retry a single failed item, check item logs, fix any clear source or configuration issue, then sync the item again. For website and R2 data sources, you can also run a source sync job.

If the instance is paused, resolve the underlying cause, then resume the instance.

If a transient error persists after retrying, contact Cloudflare support with the item ID, instance ID, error code, and request timestamp.

Item-level errors

These errors affect a single item. The item moves to status: "error" while the rest of the instance keeps indexing. Fix the item or retry it.

File and content

These errors appear when AI Search cannot read, convert, chunk, or embed a source file. For supported formats and file size limits, refer to Data source. For chunking and model limits, refer to Chunking and Supported models.

Error Details Recommended action
unknown_error An unexpected processing error occurred. Check item logs for the failed step, then sync the item again. If the error persists, contact support.
over_size The file exceeds the maximum allowed size. Reduce the file size, split the file, or exclude it. Review file limits.
unsupported_type The file type is not supported. Convert the file to a supported file type, then upload or sync it again.
file_not_found The file was not found in the source. Restore the source file, then sync the item or run a source sync job. If the file was intentionally deleted, run a source sync so AI Search can update the index.
invalid_url The file URL is invalid. Fix the URL in the website data source or sitemap, then run a source sync job.
file_is_corrupt The file is corrupt. Replace the file with an uncorrupted copy, then upload or sync it again.
file_is_password_locked The file is encrypted or requires a password before AI Search can read its contents. Remove the password, upload an unlocked copy, then sync the item again.
invalid_pdf AI Search could not parse the file as a valid PDF. Upload a PDF that opens correctly, or convert the content to another supported file type.
unable_to_convert_to_markdown AI Search could not convert the file to text. Use a supported file type or replace scanned content with extractable text.
markdown_too_large AI Search converted the file, but the generated Markdown exceeded AI Search processing limits. If the source file is within AI Search file limits, contact support. As a workaround, split the source into smaller files if practical.
markdown_conversion_empty AI Search converted the file, but the conversion returned no usable text. Ensure the file contains extractable text. Scanned or image-only files produce no text, so add a text layer or upload a text-based version.
file_content_empty The file is empty or contains only headings. Add searchable body content, then upload or sync the file again.
chunk_too_large_for_storage AI Search generated a chunk that exceeded internal storage limits. Lower chunk size if you configured a high value. If the item still fails, contact support.
timeout_error Item processing timed out. Sync the item again. Check Cloudflare Status and contact support if the error persists.
file_length_exceed_embedding_model The file is too long for the embedding model. Use a smaller source file, or contact support if the file is within documented limits.
file_too_large_for_embedder The file exceeds the maximum byte size accepted by the embedding model. Use a smaller source file, or contact support if the file is within documented limits.

Website crawl

These errors appear when AI Search cannot fetch, render, or include a page from a website data source. AI Search uses Browser Run in the background to crawl and render pages and manages it for you.

Error Details Recommended action
too_many_redirects The crawler followed too many redirects or found a redirect loop. Fix the redirect chain for the website data source, then run a source sync job.
invalid_host_after_redirect The page redirected to a hostname outside the current crawl scope. Check item logs for the redirect target. If that target should be indexed, contact support. Otherwise, exclude the original URL with path filtering.
subdomains_not_allowed The URL is outside the hostnames AI Search can crawl for this website data source. If this URL should be indexed by the instance, contact support. Otherwise, exclude it with path filtering.
blocked_by_robots_txt robots.txt disallowed the crawl. Update robots.txt so the AI Search crawler can access the site.
blocked_by_robots_txt_path robots.txt disallowed the path. Allow the path in robots.txt, or exclude it with path filtering if you do not want it indexed.
blocked_by_content_signal The site blocked the crawl with Content Signals. Review Content Signals directives in robots.txt. If the content should not be indexed, exclude it with path filtering.
excluded_by_path_filter Your path filter excluded the item. Review include and exclude rules if the item should be indexed.
network_connection_lost The network connection was interrupted. Sync the item again. If the error persists, check that the source is reachable.
crawl_got_http_error The crawler received an HTTP error. Check item logs for the HTTP status. Fix the origin response or access controls, then run a source sync job.
crawl_got_http_401 The crawler received 401 Unauthorized. Make the page accessible to the crawler. For protected pages, configure extra headers or Cloudflare Access service credentials.
crawl_got_http_403 The crawler received 403 Forbidden. Allow the AI Search crawler through your access controls and origin firewall.
crawl_got_http_429 The origin rate limited the crawler. Allow the AI Search crawler, raise the origin limit, or narrow crawl scope with path filtering.
blocked_by_payment The site returned 402 Payment Required. Exclude the page with path filtering. AI Search does not support paid crawls.
blocked_by_waf A web application firewall (WAF) blocked the crawler. Allow the AI Search crawler in your WAF.
blocked_by_bot_management Bot controls blocked the crawler. Allow the AI Search crawler in your bot protection settings.
blocked_by_turnstile Turnstile blocked the crawler. Allow the AI Search crawler, or exclude the page with path filtering.
http_4xx The site returned an HTTP 4xx error. Check item logs for the exact status. Fix the URL or access controls, or exclude the page with path filtering.
http_5xx The site returned an HTTP 5xx error. Fix origin health, then sync the item or run a source sync job.
unreachable_timeout The crawler could not reach the page before timeout. Check origin latency, firewall rules, and page availability, then run a source sync job.
unreachable_dns The source domain did not resolve. Check DNS records for the source domain.
page_limit_reached The managed crawler reached your plan's daily page limit, so some pages were not crawled in this run. Upgrade to Workers Paid for unlimited daily crawling, or reduce the pages in scope with path filtering. Free plans crawl up to 500 pages per day. See limits.
browser_rendering_unknown_error Browser Run returned an unknown error. Run a source sync job again. Check Cloudflare Status and contact support if the same page keeps failing.
browser_rendering_authentication_error Browser Run required authentication. Configure extra headers for protected pages, or exclude the page.
browser_rendering_no_body_status_error Browser Run returned no page content for AI Search to index. If the page should be indexed, contact support. Otherwise, exclude the page with path filtering.
browser_rendering_timeout_error Browser Run timed out. Run a source sync job again. Check Cloudflare Status and contact support if the error persists.
browser_rendering_network_connection_closed_error The browser connection closed during rendering. Run a source sync job again. Check Cloudflare Status and contact support if the error persists.
browser_rendering_server_refused_connection_error The origin refused the browser connection. Allow the AI Search crawler through your origin network controls, then run a source sync job.
browser_rendering_rate_limit_error Browser Run was rate limited. Run a source sync job later. If the error persists, contact support.

Models and AI Gateway

These errors appear when embedding models, Workers AI, external providers, or AI Gateway cannot process item content.

Error Details Recommended action
error_embedding_data_with_workers_ai Workers AI could not generate embeddings. Sync the item again. Check Cloudflare Status and contact support if the error persists.
workers_ai_invalid_input Workers AI rejected the input. Check file content, file type, and embedding model support.
workers_ai_free_allocation_exceeded Workers AI free tier allocation was exceeded. Review Workers AI pricing and wait for allocation reset, or upgrade your Workers plan.
workers_ai_internal_error Workers AI returned an internal error. Sync the item again. Check Cloudflare Status and contact support if the error persists.
workers_ai_out_of_capacity_error Workers AI capacity was unavailable. Retry later and review Workers AI limits.
workers_ai_timeout_error Workers AI timed out. Sync the item again. Check Cloudflare Status and contact support if the error persists.
error_external_model_unknown_error An external embedding model returned an unknown error. Check provider status and AI Gateway logs, then sync the item again.
error_external_model_rate_limited An external embedding model rate limited the request. Run a source sync job later, or raise the rate limit with your model provider. Check AI Gateway logs for the provider response.
error_external_model_unauthorized An external embedding model rejected authentication. Check provider credentials in AI Gateway, then sync the item again.
ai_gateway_request_blocked_firewall AI Gateway Guardrails blocked the request. Review AI Gateway Guardrails prompt settings for the configured gateway, then run a source sync job again.
ai_gateway_dlp_blocked AI Gateway Data Loss Prevention (DLP) blocked content. Review AI Gateway DLP settings and the item content.
ai_gateway_response_blocked_firewall AI Gateway Guardrails blocked the response. Review AI Gateway Guardrails response settings for the configured gateway, then run a source sync job again.
ai_gateway_rate_limited AI Gateway rate limited the request. Run a source sync job later. If the error persists, contact support.

Storage and Vectorize

These errors appear when storing or indexing an item fails, or when the instance reaches a capacity limit. AI Search uses Vectorize in the background to store vectors and manages it for you.

Error Details Recommended action
r2_unknown_error R2 returned an unknown error. Run a source sync job again. Check Cloudflare Status and contact support if the error persists.
r2_internal_error R2 returned an internal error. Run a source sync job again. Check Cloudflare Status and contact support if the error persists.
vectorize_rate_limited Vectorize rate limited the operation. Run a source sync job later. If the error persists, contact support.
vectorize_ingestion_timeout Vectorize did not process the mutation in time. Sync the item again. Check Cloudflare Status and contact support if the error persists.
vectorize_upstream_error Vectorize returned a transient upstream error. Sync the item again. Check Cloudflare Status and contact support if the error persists.
hybrid_search_indexing_failed Hybrid search indexing failed. Sync the item again. Check Cloudflare Status and contact support if the error persists.
ai_search_is_full The AI Search instance is full. Unlike a full hybrid search index, this does not pause the instance. Request a higher limit for the instance, or create another instance to index additional content. See limits.

Instance-level errors

These errors pause the whole instance and stop all indexing until the underlying cause is resolved and the instance is resumed. They are distinct from a manual pause or the automatic pause after a period of inactivity.

Error Details Recommended action
r2_not_enabled Pauses the instance. R2 is not enabled for the account. Enable R2 for the account, then resume the instance.
bucket_not_found Pauses the instance. The source R2 bucket was not found. Check the R2 data source bucket name and account, then resume the instance.
bucket_unauthorized Pauses the instance. AI Search cannot access the R2 bucket. Check the service API token and R2 bucket permissions, then resume the instance.
external_source_missing_api_token Pauses the instance. The external source is missing API credentials. Add or update the service API token, then resume the instance.
bucket_name_invalid Pauses the instance. The R2 bucket name is invalid. Use a valid bucket name without uppercase letters or underscores, update the R2 data source, then resume the instance.
invalid_custom_header Pauses the instance. A custom crawl header is invalid. Remove or update the extra header, then resume the instance.
ai_gateway_not_configured Pauses the instance. The AI Gateway set on the instance was not found. Update the instance's ai_gateway_id to an existing gateway in AI Gateway, then resume the instance.
hybrid_search_is_full Pauses the instance. The hybrid search index is full. Its file limit is lower than the standard instance limit, so it can be reached earlier. Request a higher limit to resume the instance, or create another instance to index additional content. See limits.