gRPC status 5: NOT_FOUND

NOT_FOUND is gRPC status code 5. The requested entity, such as a file, row or user, does not exist.

Updated

Usual causes

  • The ID in the request does not exist, or was deleted.
  • The request reached a different environment or database than you expected.
  • The server returns NOT_FOUND rather than PERMISSION_DENIED to hide that the entity exists.

What to check

  1. The exact ID or name sent, including case and whitespace.
  2. Which server and environment the call reached.
  3. Whether the entity was created in the same transaction or region the read goes to.

Not to be confused with

A missing method or service is UNIMPLEMENTED, not NOT_FOUND.

What it looks like

A typical error, as a Go client prints it: rpc error: code = NotFound desc = user 42 not found

Retry, and the HTTP equivalent

NOT_FOUND
Code5
NameNOT_FOUND
In istek's status barnot_found
RetryNot unless the entity is expected to appear, such as right after an asynchronous create.
HTTP status404

istek names the status of every call it makes, not_found included, and explains transport failures in plain words. See istek.

istek, $29 once

macOS 14.0+ · Apple Silicon · no account, no telemetry

Buy istek · $29