Home / Docs / Errors and limits

Errors and limits

Every error is JSON with a message written for people: {"error": "..."}. Here's what each status means and what to do about it.

Errors

Errors come as {"error": "message"} with one of these statuses. Calls that fail cost nothing. A search that finds nothing isn't a failure: it costs its usual credits.

StatusMeansWhat to do
400The body isn't the JSON we expected.The message shows the shape to send.
401No API key, or not a valid one.Send Authorization: Bearer gw_....
402Out of credits, or past this key's monthly cap.Top up, upgrade, or raise the key's cap.
404No such collection, document or endpoint.Check the name; GET /api/collections lists them.
409You already have a collection with that name.Use it, or pick another name.
422The request can't run: no q, a regex that doesn't compile, a bad name, too many documents.The message says which.
429Your team has its plan's most requests running at once.Wait for one to finish, then retry.
503Busy, or storing a write failed (nothing was written).Retry in a moment; a retried write is safe.

Limits

LimitValue
Documents a write or delete request10,000
Text a document2,000,000 bytes
Document id512 bytes, one line
Request body16 MB
Collection name1 to 64 of a-z, 0-9, - and _
Bucket objects syncedText up to 4 MB (unzipped)
Results a search20 by default, up to your plan's most
Requests at oncePer team, by plan
A page fetch15 seconds

Results a search and requests at once for each plan are on pricing and credits.

Try it on your own documentsExact and regex search for your agents, from one API. Or see the engine on npm's source first.