Errors

Every RealtyCrawl error code, what it means and what to do. Calls that fail are never charged.

Errors come back as {"error": {"code", "message", "param"}}. param names the input to fix on a 422.

#HTTP errors

StatusCodeWhat it means
401invalid_api_keyThe API key is missing, malformed or revoked.
403account_suspendedThe account is suspended, so none of its keys work. Email support to restore it.
403origin_not_allowedA browser sent the request from a site that isn't allowed. Call the API from your server.
404not_foundNo such path.
404request_not_foundThe job ID is well-formed but unknown, or belongs to another account. An ID that isn't a UUID is no such path: 404 not_found.
405method_not_allowedWrong method for this route. Every v1 route uses GET.
409idempotency_conflictThis Idempotency-Key was already used with different search parameters.
409result_not_readyCSV was requested before every search settled. Poll as JSON until status is complete, then ask for CSV.
414uri_too_longThe query string is longer than 2,048 characters.
422unsupported_or_invalid_queryAn unknown parameter, or a value outside the documented range. error.param names the input to fix when it is one of the route's inputs.
422duplicate_parameterA parameter was sent more than once.
422invalid_idempotency_keyIdempotency-Key must be 1–128 printable ASCII characters, with no spaces.
422invalid_waitwait must be a whole number from 0 to 20.
429rate_limitedMore than 60 API calls this minute for your account.
429quota_exceededYour plan's credits are used up, and you have no extra credits left.
429too_many_pendingYour account has too many searches still pending. Wait for results before sending more.
503queue_fullThe collection queue is full.
503collection_unavailableWe can't collect from this source right now.
503storage_unavailableOur database is briefly unavailable.
503origin_unavailableThe edge couldn't reach our API server.
503service_unconfiguredThe API is misconfigured on our side. Contact support.
422location_requiredSend exactly one location: zip, city with state, bbox, or lat with lng and radius_mi. param is location.
422lookup_requiredSend exactly one of address, url or source_id. param is lookup.
422location_too_largeThe area is bigger than this route allows. Send a smaller box or radius.
422address_ambiguousThe address matches more than one home. Add the unit number or ZIP code, or send the home's url or source_id. Not charged.
404address_not_foundThe source has no home at that address. Not charged.
422invalid_cursorThe cursor is damaged, came from another route, or was made with different inputs. param is cursor.

#Failed job codes

A job that runs and fails has status: failed and one of these codes. Failed jobs are free.

CodeHTTP statusWhat it means
page_mismatch503The source repeatedly returned a different page than requested. Retries were exhausted; this search was not charged.
schema503The source page changed shape. We fail the job rather than return data we can't trust.
network503We couldn't reach the source, or it timed out.
upstream503The source returned a server error.
throttled503The source rate-limited us.
blocked503The source blocked the request.
rejected422The source rejected the search as asked, for example a filter combination it refuses. Not charged.
not_found404The home doesn't exist on the source or was removed. Not charged.
filter_not_supported422The source doesn't offer a filter you sent on this route. Not charged.
filter_not_applied422The source returned results that don't match a filter you sent, so we don't return them. Change or drop that filter and search again. Not charged.
location_not_served422The source has no results page for this location right now. Try a nearby ZIP code or a map box. Not charged.
auth503The source didn't accept our session.
deadline_exceeded503The job didn't finish in time.
address_not_found404The source has no home at that address. Not charged.
address_ambiguous422The address matches more than one home. Add the unit number or ZIP code, or send the home's url or source_id. Not charged.