Reduce your concurrent request rate for the same object

I’m deleting a bunch of objects from my R2 bucket but occasionally I get this error from the S3 API: “operation error S3: DeleteObjects, https response error StatusCode: 429, RequestID: , HostID: , api error ServiceUnavailable: Reduce your concurrent request rate for the same object.” (I’m using the library)

Earlier today I was running a single thread deleting objects, together with a few object reads over HTTP and paginated ListObjectsV2 calls and I got this error frequently.
Now I’m running 5 threads deleting objects and one thread listing more objects and it’s worked fine for an hour and now I suddenly got this error again.

I’m not passing duplicate filenames to the same call, and I’ve seen it fail even if it was the first call my script made before it even started any concurrent calls.

So what exactly is my request conflicting with? Does “object” really mean an Object, or does it actually mean Bucket?