Skip to main content
tools, tool_choice, parallel_tool_calls, response_format, and structured_outputs are forwarded as-is. Model support for each is OpenRouter’s; check the model’s row in GET /v1/models and the OpenRouter docs.

Tool calling

Set parallel_tool_calls: false to force one call per turn on models that would otherwise emit several.

Structured output

Use response_format with a JSON schema. The gateway forwards it; OpenRouter enforces it on models that support structured outputs.
Add the response-healing plugin to repair near-valid JSON from models without native schema support:
Plugin semantics and any plugin cost are OpenRouter’s; costs are included in usage.cost and therefore in the credits charged.