Deleting CosmosDB Record in python
I am trying to do a simple delete in CosmosDB but its saying that my partition key is incorrect.
# Initialize client
endpoint = cosmos_endpoint
key = cosmos_key
client = CosmosClient(endpoint, key)
database = client.get_database_client(cosmos_database_name)
container = database.get_container_client(cosmos_container_name)
# Query for items where brother = "JTJr"
query = "SELECT * FROM c WHERE c.brother = 'JTJr'"
items = list(container.query_items(query=query, enable_cross_partition_query=True))
deleted_count = 0
for item in items:
try:
# Delete using id and partition key
container.delete_item(
item=item['id'],
partition_key=item['id']
)
deleted_count += 1
print(f"Deleted item: {item['id']}")
except Exception as e:
print(f"Error deleting item {item['id']}: {str(e)}")
print(f"Total deleted: {deleted_count}")
The query returns 800 records however when it tries to delete it fails.
I have tried different partition keys but nothing works eg. "Id","id",item["id"]. This is the insert item
container = database.create_container_if_not_exists(
id=cosmos_container_name,
partition_key=PartitionKey(path="/Id")
)
documents = [
{
"id": str(id + index), # Start ID from 999
"header": row.header
}]
result = container.upsert_item(body=document)