Claude apps gateway configuration changedclaude-apps-gateway-config
Nearest release: v2.1.282, published 11 hours before upstream edited the page. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
Upstream edited this page at 25 Sep 2026 03:24 UTC, give or take a minute or two: the time comes from Anthropic’s own sitemap rather than from a commit. This site recorded the change at 25 Sep 2026 03:37 UTC.
Upstream edited
Recorded here
Lines+37added
Lines−0removed
From line
31
where the diff opens
First seen
14 Aug 2026
this site's first read of the page
Recorded edits30to this page, all time
### `load_test_mode`
The whole hunk
from line 31, old and new numbered
/
from line 31
3131* [`managed`](#managed): managed settings policies by IdP group
3232* [`telemetry`](#telemetry): OTLP forwarding to your observability stack
3333* [`access_control`, `limits`, `timeouts`, `rate_limits`](#http-tuning): IP allow/deny, request size caps, upstream time-to-first-byte, and per-IP sign-in limits
34* [`load_test_mode`](#load_test_mode): load test the gateway without calling a model provider
3435
3536## Secret expansion
3637
from line 952
951952
952953Behind such a front end, set [`listen.trusted_proxies`](#listen) first so the gateway sees real client addresses, and keep the gateway and everything in front of it unreachable from the public internet regardless.
953954
955### `load_test_mode`
956
957The `load_test_mode` block lets you load test a gateway without calling a model provider. While it's on, the gateway builds and signs each provider request as usual, discards it instead of sending it, and streams a canned reply back through its normal response path. The reply is filler text that begins with a sentence saying it is canned.
958
959Requires v2.1.283 or later. Earlier versions refuse to start when the key is set, so upgrade every replica before you add the block and remove it before you roll back.
960
961The example below turns the mode on with the defaults, a reply of 750 output tokens streamed over about 10 seconds:
962
963```yaml theme={null}
964load_test_mode:
965 enabled: true
966 reply_tokens: 750 # roughly how many tokens of text each canned reply carries
967 reply_seconds: 9.5 # how long a streamed reply takes
968```
969
970| Field | Required | Description |
971| --------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
972| `enabled` | Yes | `true` turns the mode on. `false` keeps your numbers in the file with the mode off. The gateway refuses to start if the block is present without it. |
973| `reply_tokens` | No | Default `750`. Roughly how many tokens of text each canned reply carries, a whole number from 1 to 100000. |
974| `reply_seconds` | No | Default `9.5`. How long a streamed reply takes, from 0 to 600. `0` sends the whole reply at once. A reply to a non-streaming request always comes back at once. |
975
976A load test in this mode covers the gateway, your Postgres, and everything in front of the gateway. It doesn't cover the provider's limits, speed, or network path.
977
978While the mode is on, a request can carry an `x-load-test-user` header holding a whole number of up to seven digits, and the gateway counts each number as a separate developer with the email and groups of the developer whose token came with the request. Give the load-test deployment its own empty database, because the gateway refuses to start with the mode on against a database in which any developer has already spent anything.
979
980<Warning>
981 Never turn this on for a gateway that developers use. Every request gets the canned reply and no model is called. The gateway logs a `load_test_mode is on` warning at boot and marks each `inference` [audit event](/docs/en/claude-apps-gateway-deploy#logs) with `load_test: true` while the mode is on.
982</Warning>
983
954984## Complete example
955985
956986This full reference config exercises every core section; the [HTTP tuning blocks](#http-tuning) keep their defaults. Copy it, delete what you don't need, and fill in your values. The config in the [Quickstart](/docs/en/claude-apps-gateway#quickstart) is a minimal version of this.
from line 1049
10191049
10201050# enforcement:
10211051# fail_closed_on_error: false
1052
1053# Load test this deployment without calling a model provider. Never on a
1054# gateway that developers use: every request gets a canned reply.
1055# load_test_mode:
1056# enabled: true
1057# # reply_tokens: 750
1058# # reply_seconds: 9.5
10221059
10231060# Meter at contracted rates instead of USD list price. Requires admin: or a
10241061# managed: policy. With managed:, the same rates also go to signed-in clients.
No line in this hunk matches that.