User-agent filtering block valid identifier containing the curl sub-string
### Current Behavior
It appears that crates.io blocks all request containing the "curl" substring, even with other identifier correctly set up, preventing reporting the user-agent of the tool used to fetch the data.
Example:
```
> curl https://crates.io/api/v1/crates/actix-http/3.11.0/download --user-agent "curl test (marius@mariusdavid.fr)"
{"errors":[{"detail":"We are unable to process your request at this time. This usually means that you are in violation of our API data access policy (https://crates.io/data-access). Please email help@crates.io and provide the request id e7b37e83-2065-0ae3-93c3-ae0a6043c4e9"}]}
```
```
> curl https://crates.io/api/v1/crates/actix-http/3.11.0/download --user-agent "curl/8.20.0 Nixpkgs/26.11"
{"errors":[{"detail":"We are unable to process your request at this time. This usually means that you are in violation of our API data access policy (https://crates.io/data-access). Please email help@crates.io and provide the request id def5bc50-f7c6-b8f0-a3a1-8ecc211729c1"}]}
```
Those two request appear to fullfill the requirement for identification as per the Data Access Policy https://crates.io/data-access
### Expected Behavior
Fetching success, allowing me to properly compile my application via Nix, and, by extension, update my server.
### Steps To Reproduce
_No response_
### Environment
- OS: NixOS
### Anything else?
_No response_
关闭于 2026-05-27 3 条评论