Parameter Compatibility
Which parameters work with which models.
Guaranteed Compatible (all models)
Widely Supported (most models)
Model-Specific
Check supported_parameters on GET /v1/models for the resolved model before relying on any of these.
How It Works
On the chat wire, parameters are forwarded by a deny-list: anything that is not a credential, an SSRF vector, or money and tenancy truth is passed through as sent, so a brand-new provider knob reaches the wire without a change here. The Anthropic and Responses wires behave differently: both rebuild the request from a fixed set of fields, so a knob outside that set is dropped rather than forwarded. Unsupported params are silently ignored by most providers (the same behavior as OpenRouter).
Several things modify a request on the way out:
- A reviewed adapter policy removes or rewrites parameters a specific provider or model is known to reject. The reasoning-related rules are listed in Reasoning Controls.
- Reactive repair. When a provider returns a 4xx that names its own fix ("Unsupported parameter:
'stop'", "does not support 'max' with this model"), the marketplace can apply that fix and retry the same
seller instead of failing you. This is gated by
ADAPTER_REPAIR, which shipsoff; until an operator arms it the provider's error surfaces instead.model,messages,tools,tool_choiceandresponse_formatare protected from the generic strip, though a few narrowly-scoped rules do rewritemessagesandtool_choicewhere a provider names them specifically. - Prompt-cache injection, which can add a
prompt_cache_keyand Anthropiccache_controlbreakpoints. stream_options: {"include_usage": true}, auto-injected for metering on streaming chat requests.
Most of these are named in the X-SI-Adapted-Params response header, which is the best available record of
what changed. It is not exhaustive: when you send no stream_options of your own the injection is
deliberately silent, and fields dropped by an Anthropic or Responses wire rebuild are not itemised. (If you
did send stream_options and it was overwritten, that one is disclosed.)
A provider 4xx the marketplace cannot interpret is returned to you as a 400. It does not automatically
fail over to another seller.