dynobase-icon
Dynobase

Error: DynamoDB Item Does Not Exist

Rafal Wilinski

Answered by Rafal Wilinski

Last updated: October 23rd, 2026

Solution

A missing item is handled differently by each DynamoDB operation. GetItem returns no Item, an unconditional DeleteItem succeeds, and UpdateItem can create a new item. A message saying Item Does Not Exist may therefore come from a wrapper or an explicit condition.

  1. Verify the complete primary key, its types and the selected table, account, Region and endpoint.
  2. For an immediate read after a write, use ConsistentRead on the base table. A GSI is eventually consistent and may not contain an item lacking its index keys.
  3. Treat a missing GetItem result as a valid application outcome where appropriate.
  4. For writes that must affect an existing item, use attribute_exists on the partition-key attribute in ConditionExpression.
import { DynamoDBClient } from "@aws-sdk/client-dynamodb";
import { DynamoDBDocumentClient, GetCommand } from "@aws-sdk/lib-dynamodb";

const db = DynamoDBDocumentClient.from(new DynamoDBClient({}));

const { Item } = await db.send(new GetCommand({
  TableName: "Orders",
  Key: { pk: "CUSTOMER#123", sk: "ORDER#42" },
  ConsistentRead: true,
}));
if (Item === undefined) console.log("Order not found");

A pre-read cannot guarantee the item will still exist when a later write runs. Enforce the requirement atomically on the write, and handle ConditionalCheckFailedException. For Query or Scan, an empty filtered page does not prove there are no later matches; inspect LastEvaluatedKey.

See existence conditions and AWS documentation.

Dynobase is a Professional GUI Client for DynamoDB

Start your 7-day free trial today

Product Features

Download
/
Pricing
/
Member Portal
/
Privacy
/
EULA
/
Twitter
© 2026 Dynobase
+
Still using AWS DynamoDB Console?
Try Dynobase to accelerate your DynamoDB workflow. Start your 7-day free trial today.