By running "simultaneously" two transfers from same client we reliable get HTTP 429 for one of these transfers (sometimes for the first one and sometimes for the second one), e.g.
#!/bin/sh
curl --verbose --silent --cert /tmp/x509up_u$(id -u) --key /tmp/x509up_u$(id -u) --cacert /tmp/x509up_u$(id -u) --capath /etc/grid-security/certificates -L https://se1.farm.particle.cz/atlas/atlasscratchdisk/SAM/t1 > /dev/null 2> t1.out &
curl --verbose --silent --cert /tmp/x509up_u$(id -u) --key /tmp/x509up_u$(id -u) --cacert /tmp/x509up_u$(id -u) --capath /etc/grid-security/certificates -L https://se1.farm.particle.cz/atlas/atlasscratchdisk/SAM/t2 > /dev/null 2> t2.out &
wait
one transfer runs OK
* Connected to se1.farm.particle.cz (2001:718:401:6025:2::1000) port 443 (#0)
...
> GET /atlas/atlasscratchdisk/SAM/t1 HTTP/1.1
> Host: se1.farm.particle.cz
> User-Agent: curl/7.76.1
> Accept: */*
...
< HTTP/1.1 302 Found
< Date: Sun, 24 May 2026 10:10:12 GMT
< Server: dCache/11.2.4
< Location: https://ds42.farm.particle.cz:20853/atlas/atlasscratchdisk/SAM/t1?dcache-http-uuid=3955de2e-73db-4839-8d9b-1db70580bcb5&dcache-http-ref=https%3A%2F%2Fse1.farm.particle.cz%3A443
< Content-Length: 0
...
* Connected to ds42.farm.particle.cz (2001:718:401:6025:2::42) port 20853 (#1)
...
> GET /atlas/atlasscratchdisk/SAM/t1?dcache-http-uuid=3955de2e-73db-4839-8d9b-1db70580bcb5&dcache-http-ref=https%3A%2F%2Fse1.farm.particle.cz%3A443 HTTP/1.1
> Host: ds42.farm.particle.cz:20853
> User-Agent: curl/7.76.1
> Accept: */*
...
< HTTP/1.1 200 OK
< Accept-Ranges: bytes
< Content-Length: 692252
< Content-Disposition: attachment;filename=t1
< Content-Location: https://se1.farm.particle.cz/atlas/atlasscratchdisk/SAM/t1
< Server: dCache/11.2.4
while second fails with HTTP 429
* Connected to se1.farm.particle.cz (2001:718:401:6025:2::1000) port 443 (#0)
...
> GET /atlas/atlasscratchdisk/SAM/t2 HTTP/1.1
> Host: se1.farm.particle.cz
> User-Agent: curl/7.76.1
> Accept: */*
...
< HTTP/1.1 429 Too Many Requests
< Date: Sun, 24 May 2026 10:10:12 GMT
< Server: dCache/11.2.4
< Content-Length: 39
...
By running "simultaneously" two transfers from same client we reliable get HTTP 429 for one of these transfers (sometimes for the first one and sometimes for the second one), e.g.
one transfer runs OK
while second fails with HTTP 429