Claude Code "--client-data-url: the document has no entry for": What It Means and How to Start Anyway#
Published by Alex Sorokoletov
--client-data-url (or CLAUDE_CODE_CLIENT_DATA_URL) points Claude Code at a signed configuration document on downloads.claude.ai that sets client data per model. When the document has no entry for the selected model, Claude Code exits. From v2.1.302, --allow-other-models or CLAUDE_CODE_ALLOW_OTHER_MODELS=1 starts it anyway, without that document's settings.
What the document is#
Anthropic gives out the URL. Claude Code accepts only an https://downloads.claude.ai/ address with no port, credentials, query string or fragment. The document carries an RSA signature (RSASSA-PKCS1-v1_5, SHA-512) in a separate file next to it, checked against a public key built into Claude Code. An unsigned or altered document stops the launch.
Inside the document:
- a schema version (1 or 2) and a document version number
- an optional minimum Claude Code version
- up to 50 entries, each a model-name pattern (a regular expression of up to 200 characters) with the client data for models that match it
The first entry whose pattern matches the model applies. Its client data is laid over the per-model client data that Claude Code otherwise receives from Anthropic for that model.
One client data key changes behavior you can see: assume_first_party_base_url. When ANTHROPIC_BASE_URL points at a host other than api.anthropic.com, this key makes Claude Code treat that base URL as the Anthropic API. It is not applied when a host app manages the provider (CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST, CLAUDE_CODE_HOST_AUTH_ENV_VAR) or when _CLAUDE_CODE_ASSUME_FIRST_PARTY_BASE_URL is already set.
How to set it#
On the command line:
claude --client-data-url "https://downloads.claude.ai/<path Anthropic gave you>"
Or as an environment variable, which keeps the URL out of the process list. In ~/.claude/settings.json:
{
"env": {
"CLAUDE_CODE_CLIENT_DATA_URL": "https://downloads.claude.ai/<path Anthropic gave you>"
}
}
Neither option appears in claude --help, and the changelog does not mention either one as of v2.1.302.
How to start on a model the document does not cover#
Before v2.1.302, a model with no entry stopped the launch. From v2.1.302 there are two errors and one way past both:
the document has no entry for <model>; it has entries for models matching <patterns>: pass a matching--model, or allow other models.the document has nothing for any model (its publisher switched it off): the document has no entries at all.
claude --client-data-url "$URL" --allow-other-models
# or
CLAUDE_CODE_ALLOW_OTHER_MODELS=1 claude
With either one set, Claude Code starts on the model and applies none of the document's per-model client data. It still loads and checks the document, so a bad URL or signature still stops the launch.
Why Claude Code refuses to start#
When the document cannot be used, Claude Code exits with Error: --client-data-url: <reason>. It does not fall back to running without it. The reasons:
| Reason in the error | Cause | Fix |
|---|---|---|
| the URL must be the https://downloads.claude.ai/ address Anthropic gave you | Wrong host, http, a port, a query string or a fragment | Use the URL exactly as given |
| it cannot be used in a cloud, remote-environment or ssh session | Claude Code runs on another machine | Use it only in local sessions. Cloud sessions refuse the flag outright |
| it only works when Claude Code talks to the Anthropic API directly | Bedrock, Vertex, Foundry or a cloud gateway is the provider | Remove the flag for those providers |
| your organization's policy does not allow it | The organization policy turns off the model catalog, as a HIPAA policy does | Remove the flag, or ask your admin |
| there is nothing at that URL | HTTP 404 or 410; the document was withdrawn | Ask Anthropic for a new URL |
| could not fetch the document from downloads.claude.ai | Network error, timeout or another HTTP status | Allow https://downloads.claude.ai through your proxy |
| the document or its signature is not valid | No signature file, a bad signature, or a document that does not parse | Ask Anthropic for a new URL |
| this version of Claude Code cannot read the document | Unknown signing key or schema version | Run claude update |
| the server returned an older document than one already accepted on this machine | The document version is lower than the highest one this machine has stored for that URL | Check for a proxy serving a cached copy, then ask Anthropic |
| the document requires Claude Code X or newer | The document sets a minimum version | Run claude update |
How to check what it applied#
/status shows a Client data row when a document is loaded. It reads applied to <model> (document vN), or loaded (document vN), nothing in it for <model> followed by the patterns it does cover. When assume_first_party_base_url took effect, the row adds base URL treated as the Anthropic API. With --debug, the log has [clientDataUrl] loaded document vN covering N model pattern(s).
Environment variables#
| Variable | What it does |
|---|---|
CLAUDE_CODE_CLIENT_DATA_URL | URL of a signed configuration document on downloads.claude.ai with per-model client data; same as --client-data-url, and keeps the URL out of the process list. Claude Code exits if it cannot load the document. |
CLAUDE_CODE_ALLOW_OTHER_MODELS | Set to 1 to start on a model that the --client-data-url document has no entry for, without applying its per-model client data, instead of exiting. Same as --allow-other-models (v2.1.302+). |
Timeline#
| Version | Published | Change |
|---|---|---|
| v2.1.283 | 2026-09-25 | --client-data-url and CLAUDE_CODE_CLIENT_DATA_URL arrive. A model the document does not cover stops the launch. |
| v2.1.302 | 2026-10-16 | --allow-other-models and CLAUDE_CODE_ALLOW_OTHER_MODELS arrive, with a separate error for a document that has no entries. |
Should you use it?#
Only with a URL from Anthropic. There is no public document, and without one the flag only adds a way for the launch to fail. If you have one and also switch between models, set CLAUDE_CODE_ALLOW_OTHER_MODELS=1 so a model outside the document starts instead of exiting. If you see the errors above and did not set the flag yourself, look for CLAUDE_CODE_CLIENT_DATA_URL in the env block of your settings files or in your shell profile.
FAQ#
Q: What is --client-data-url in Claude Code?
A: A hidden flag that loads a signed configuration document from downloads.claude.ai and applies its per-model client data. It arrived in v2.1.283. CLAUDE_CODE_CLIENT_DATA_URL does the same.
Q: How do I fix "the document has no entry for" my model?
A: Pass a --model that matches one of the patterns the error lists, or add --allow-other-models (or CLAUDE_CODE_ALLOW_OTHER_MODELS=1, v2.1.302 or later) to start without the document's settings for that model.
Q: Does --client-data-url work with Bedrock or Vertex?
A: No. It works only when Claude Code talks to the Anthropic API directly. With Bedrock, Vertex, Foundry or a cloud gateway, Claude Code exits with an error.
Q: Can I write my own client data document?
A: No. Claude Code checks the document's signature against a key built into it and accepts only downloads.claude.ai URLs.
Q: Why does Claude Code exit instead of ignoring a bad document?
A: The error says it: Claude Code does not start without the configuration it was given. Remove the flag or the environment variable to start without it.
Sources: Claude Code changelog (no entry for either flag through v2.1.302)
Related: CLAUDE_CODE_CLIENT_DATA_URL in the env-var glossary | Claude Code v2.1.283 analysis | CLAUDE_CODE_ATTRIBUTION_HEADER Guide