Compare commits

..
Author SHA1 Message Date
OpenRouter SDK Bot 0dc0894f76 chore: update OpenAPI spec [sdk-bot] 2026-04-14 02:35:25 +00:00
+26 -164
View File
@@ -1326,16 +1326,12 @@ components:
nullable: true
type: array
new_lines:
nullable: true
type: integer
new_start:
nullable: true
type: integer
old_lines:
nullable: true
type: integer
old_start:
nullable: true
type: integer
type:
enum:
@@ -1418,13 +1414,10 @@ components:
- pdf
type: string
num_lines:
nullable: true
type: integer
start_line:
nullable: true
type: integer
total_lines:
nullable: true
type: integer
type:
enum:
@@ -1681,10 +1674,8 @@ components:
cache_creation:
$ref: '#/components/schemas/AnthropicCacheCreation'
cache_creation_input_tokens:
nullable: true
type: integer
cache_read_input_tokens:
nullable: true
type: integer
inference_geo:
nullable: true
@@ -2713,7 +2704,6 @@ components:
nullable: true
type: boolean
completed_at:
nullable: true
type: integer
created_at:
type: integer
@@ -2721,7 +2711,6 @@ components:
$ref: '#/components/schemas/ResponsesErrorField'
frequency_penalty:
format: double
nullable: true
type: number
id:
type: string
@@ -2730,10 +2719,8 @@ components:
instructions:
$ref: '#/components/schemas/BaseInputs'
max_output_tokens:
nullable: true
type: integer
max_tool_calls:
nullable: true
type: integer
metadata:
$ref: '#/components/schemas/RequestMetadata'
@@ -2768,7 +2755,6 @@ components:
type: boolean
presence_penalty:
format: double
nullable: true
type: number
previous_response_id:
nullable: true
@@ -2791,7 +2777,6 @@ components:
type: boolean
temperature:
format: double
nullable: true
type: number
text:
$ref: '#/components/schemas/TextConfig'
@@ -2840,7 +2825,6 @@ components:
type: integer
top_p:
format: double
nullable: true
type: number
truncation:
$ref: '#/components/schemas/Truncation'
@@ -3511,7 +3495,6 @@ components:
- function
type: object
- $ref: '#/components/schemas/DatetimeServerTool'
- $ref: '#/components/schemas/ImageGenerationServerTool_OpenRouter'
- $ref: '#/components/schemas/ChatSearchModelsServerTool'
- $ref: '#/components/schemas/OpenRouterWebSearchServerTool'
- $ref: '#/components/schemas/ChatWebSearchShorthand'
@@ -3671,10 +3654,22 @@ components:
description: Frequency penalty (-2.0 to 2.0)
example: 0
format: double
nullable: true
type: number
image_config:
$ref: '#/components/schemas/ImageConfig'
additionalProperties:
anyOf:
- type: string
- format: double
type: number
- items:
nullable: true
type: array
description: >-
Provider-specific image configuration options. Keys and values vary by model/provider. See
https://openrouter.ai/docs/guides/overview/multimodal/image-generation for more details.
example:
aspect_ratio: '16:9'
type: object
logit_bias:
additionalProperties:
format: double
@@ -3692,12 +3687,10 @@ components:
max_completion_tokens:
description: Maximum tokens in completion
example: 100
nullable: true
type: integer
max_tokens:
description: 'Maximum tokens (deprecated, use max_completion_tokens). Note: some providers enforce a minimum of 16.'
example: 100
nullable: true
type: integer
messages:
description: List of messages for the conversation
@@ -3763,7 +3756,6 @@ components:
description: Presence penalty (-2.0 to 2.0)
example: 0
format: double
nullable: true
type: number
provider:
$ref: '#/components/schemas/ProviderPreferences'
@@ -3812,7 +3804,6 @@ components:
seed:
description: Random seed for deterministic outputs
example: 42
nullable: true
type: integer
service_tier:
description: The service tier to use for processing this request.
@@ -3856,7 +3847,6 @@ components:
description: Sampling temperature (0-2)
example: 0.7
format: double
nullable: true
type: number
tool_choice:
$ref: '#/components/schemas/ChatToolChoice'
@@ -3873,13 +3863,11 @@ components:
top_logprobs:
description: Number of top log probabilities to return (0-20)
example: 5
nullable: true
type: integer
top_p:
description: Nucleus sampling parameter (0-1)
example: 1
format: double
nullable: true
type: number
trace:
$ref: '#/components/schemas/TraceConfig'
@@ -4358,19 +4346,15 @@ components:
properties:
accepted_prediction_tokens:
description: Accepted prediction tokens
nullable: true
type: integer
audio_tokens:
description: Tokens used for audio output
nullable: true
type: integer
reasoning_tokens:
description: Tokens used for reasoning
nullable: true
type: integer
rejected_prediction_tokens:
description: Rejected prediction tokens
nullable: true
type: integer
type: object
prompt_tokens:
@@ -4912,7 +4896,6 @@ components:
description: Spending limit in USD
example: 50
format: double
nullable: true
type: number
name:
description: Name for the new guardrail
@@ -5036,26 +5019,22 @@ components:
properties:
frequency_penalty:
format: double
nullable: true
type: number
presence_penalty:
format: double
nullable: true
type: number
repetition_penalty:
format: double
nullable: true
type: number
temperature:
format: double
nullable: true
type: number
top_k:
minimum: 0
nullable: true
type: integer
top_p:
format: double
nullable: true
type: number
type: object
DeleteGuardrailResponse:
@@ -5735,7 +5714,6 @@ components:
description: Spending limit in USD
example: 100
format: double
nullable: true
type: number
name:
description: Name of the guardrail
@@ -5763,22 +5741,6 @@ components:
example: monthly
nullable: true
type: string
ImageConfig:
additionalProperties:
anyOf:
- type: string
- format: double
type: number
- items:
nullable: true
type: array
description: >-
Provider-specific image configuration options. Keys and values vary by model/provider. See
https://openrouter.ai/docs/guides/overview/multimodal/image-generation for more details.
example:
aspect_ratio: '16:9'
quality: high
type: object
ImageGenCallCompletedEvent:
allOf:
- $ref: '#/components/schemas/OpenAIResponsesImageGenCallCompleted'
@@ -5892,46 +5854,6 @@ components:
required:
- type
type: object
ImageGenerationServerTool_OpenRouter:
description: 'OpenRouter built-in server tool: generates images from text prompts using an image generation model'
example:
parameters:
model: openai/gpt-image-1
quality: high
size: 1024x1024
type: openrouter:image_generation
properties:
parameters:
$ref: '#/components/schemas/ImageGenerationServerToolConfig'
type:
enum:
- openrouter:image_generation
type: string
required:
- type
type: object
ImageGenerationServerToolConfig:
additionalProperties:
anyOf:
- type: string
- format: double
type: number
- items:
nullable: true
type: array
description: >-
Configuration for the openrouter:image_generation server tool. Accepts all image_config params (aspect_ratio,
quality, size, background, output_format, output_compression, moderation, etc.) plus a model field.
example:
aspect_ratio: '16:9'
model: openai/gpt-image-1
quality: high
properties:
model:
description: Which image generation model to use (e.g. "openai/gpt-image-1"). Defaults to "openai/gpt-image-1".
example: openai/gpt-image-1
type: string
type: object
ImageGenerationStatus:
enum:
- in_progress
@@ -7573,7 +7495,6 @@ components:
cache_control:
$ref: '#/components/schemas/AnthropicCacheControlDirective'
max_uses:
nullable: true
type: integer
name:
enum:
@@ -7611,7 +7532,6 @@ components:
cache_control:
$ref: '#/components/schemas/AnthropicCacheControlDirective'
max_uses:
nullable: true
type: integer
name:
enum:
@@ -7628,7 +7548,6 @@ components:
- name
type: object
- $ref: '#/components/schemas/DatetimeServerTool'
- $ref: '#/components/schemas/ImageGenerationServerTool_OpenRouter'
- $ref: '#/components/schemas/ChatSearchModelsServerTool'
- $ref: '#/components/schemas/OpenRouterWebSearchServerTool'
type: array
@@ -7662,7 +7581,6 @@ components:
- properties:
cost:
format: double
nullable: true
type: number
cost_details:
nullable: true
@@ -7672,7 +7590,6 @@ components:
type: number
upstream_inference_cost:
format: double
nullable: true
type: number
upstream_inference_prompt_cost:
format: double
@@ -8004,7 +7921,6 @@ components:
context_length:
description: Maximum context length in tokens
example: 8192
nullable: true
type: integer
created:
description: Unix timestamp of when the model was created
@@ -9970,22 +9886,18 @@ components:
p50:
description: Maximum p50 latency (seconds)
format: double
nullable: true
type: number
p75:
description: Maximum p75 latency (seconds)
format: double
nullable: true
type: number
p90:
description: Maximum p90 latency (seconds)
format: double
nullable: true
type: number
p99:
description: Maximum p99 latency (seconds)
format: double
nullable: true
type: number
type: object
PercentileStats:
@@ -10034,22 +9946,18 @@ components:
p50:
description: Minimum p50 throughput (tokens/sec)
format: double
nullable: true
type: number
p75:
description: Minimum p75 throughput (tokens/sec)
format: double
nullable: true
type: number
p90:
description: Minimum p90 throughput (tokens/sec)
format: double
nullable: true
type: number
p99:
description: Minimum p99 throughput (tokens/sec)
format: double
nullable: true
type: number
type: object
PerRequestLimits:
@@ -10658,10 +10566,8 @@ components:
latency_last_30m:
$ref: '#/components/schemas/PercentileStats'
max_completion_tokens:
nullable: true
type: integer
max_prompt_tokens:
nullable: true
type: integer
model_id:
description: The unique identifier for the model (permaslug)
@@ -10759,18 +10665,15 @@ components:
Uptime percentage over the last 1 day, calculated as successful requests / (successful + error requests) *
100. Rate-limited requests are excluded. Returns null if insufficient data.
format: double
nullable: true
type: number
uptime_last_30m:
format: double
nullable: true
type: number
uptime_last_5m:
description: >-
Uptime percentage over the last 5 minutes, calculated as successful requests / (successful + error requests)
* 100. Rate-limited requests are excluded. Returns null if insufficient data.
format: double
nullable: true
type: number
required:
- name
@@ -10879,7 +10782,6 @@ components:
nullable: true
type: boolean
max_tokens:
nullable: true
type: integer
type: object
description: Configuration for reasoning mode in the response
@@ -11358,10 +11260,19 @@ components:
type: boolean
frequency_penalty:
format: double
nullable: true
type: number
image_config:
$ref: '#/components/schemas/ImageConfig'
additionalProperties:
anyOf:
- type: string
- format: double
type: number
description: >-
Provider-specific image configuration options. Keys and values vary by model/provider. See
https://openrouter.ai/docs/features/multimodal/image-generation for more details.
example:
aspect_ratio: '16:9'
type: object
include:
items:
$ref: '#/components/schemas/ResponseIncludesEnum'
@@ -11373,10 +11284,8 @@ components:
nullable: true
type: string
max_output_tokens:
nullable: true
type: integer
max_tool_calls:
nullable: true
type: integer
metadata:
$ref: '#/components/schemas/RequestMetadata'
@@ -11419,7 +11328,6 @@ components:
type: array
presence_penalty:
format: double
nullable: true
type: number
previous_response_id:
nullable: true
@@ -11465,7 +11373,6 @@ components:
type: boolean
temperature:
format: double
nullable: true
type: number
text:
$ref: '#/components/schemas/TextExtendedConfig'
@@ -11510,18 +11417,15 @@ components:
- $ref: '#/components/schemas/ApplyPatchServerTool'
- $ref: '#/components/schemas/CustomTool'
- $ref: '#/components/schemas/DatetimeServerTool'
- $ref: '#/components/schemas/ImageGenerationServerTool_OpenRouter'
- $ref: '#/components/schemas/ChatSearchModelsServerTool'
- $ref: '#/components/schemas/WebSearchServerTool_OpenRouter'
type: array
top_k:
type: integer
top_logprobs:
nullable: true
type: integer
top_p:
format: double
nullable: true
type: number
trace:
$ref: '#/components/schemas/TraceConfig'
@@ -12031,7 +11935,6 @@ components:
context_length:
description: Context length from the top provider
example: 8192
nullable: true
type: integer
is_moderated:
description: Whether the top provider moderates content
@@ -12040,7 +11943,6 @@ components:
max_completion_tokens:
description: Maximum completion tokens from the top provider
example: 4096
nullable: true
type: integer
required:
- is_moderated
@@ -12203,7 +12105,6 @@ components:
description: New spending limit in USD
example: 75
format: double
nullable: true
type: number
name:
description: New name for the guardrail
@@ -12273,13 +12174,11 @@ components:
cost:
description: Cost of the completion
format: double
nullable: true
type: number
cost_details:
properties:
upstream_inference_cost:
format: double
nullable: true
type: number
upstream_inference_input_cost:
format: double
@@ -12865,7 +12764,6 @@ components:
cost:
description: The cost of the video generation in USD.
format: double
nullable: true
type: number
is_byok:
description: Whether the request was made using a Bring Your Own Key configuration.
@@ -14603,13 +14501,11 @@ paths:
app_id:
description: ID of the app that made the request
example: 12345
nullable: true
type: integer
cache_discount:
description: Discount applied due to caching
example: 0.0002
format: double
nullable: true
type: number
cancelled:
description: Whether the generation was cancelled
@@ -14634,7 +14530,6 @@ paths:
description: Time taken for generation in milliseconds
example: 1200
format: double
nullable: true
type: number
http_referer:
description: Referer header from the request
@@ -14652,7 +14547,6 @@ paths:
description: Total latency in milliseconds
example: 1250
format: double
nullable: true
type: number
model:
description: Model used for the generation
@@ -14662,7 +14556,6 @@ paths:
description: Moderation latency in milliseconds
example: 50
format: double
nullable: true
type: number
native_finish_reason:
description: Native finish reason as reported by provider
@@ -14672,47 +14565,38 @@ paths:
native_tokens_cached:
description: Native cached tokens as reported by provider
example: 3
nullable: true
type: integer
native_tokens_completion:
description: Native completion tokens as reported by provider
example: 25
nullable: true
type: integer
native_tokens_completion_images:
description: Native completion image tokens as reported by provider
example: 0
nullable: true
type: integer
native_tokens_prompt:
description: Native prompt tokens as reported by provider
example: 10
nullable: true
type: integer
native_tokens_reasoning:
description: Native reasoning tokens as reported by provider
example: 5
nullable: true
type: integer
num_input_audio_prompt:
description: Number of audio inputs in the prompt
example: 0
nullable: true
type: integer
num_media_completion:
description: Number of media items in the completion
example: 0
nullable: true
type: integer
num_media_prompt:
description: Number of media items in the prompt
example: 1
nullable: true
type: integer
num_search_results:
description: Number of search results included
example: 5
nullable: true
type: integer
origin:
description: Origin URL of the request
@@ -14751,12 +14635,10 @@ paths:
tokens_completion:
description: Number of tokens in the completion
example: 25
nullable: true
type: integer
tokens_prompt:
description: Number of tokens in the prompt
example: 10
nullable: true
type: integer
total_cost:
description: Total cost of the generation in USD
@@ -14772,7 +14654,6 @@ paths:
description: Cost charged by the upstream provider
example: 0.0012
format: double
nullable: true
type: number
usage:
description: Usage amount in USD
@@ -14923,7 +14804,6 @@ paths:
description: Number of records to skip for pagination
example: 0
minimum: 0
nullable: true
type: integer
- description: Maximum number of records to return (max 100)
in: query
@@ -15319,7 +15199,6 @@ paths:
description: Number of records to skip for pagination
example: 0
minimum: 0
nullable: true
type: integer
- description: Maximum number of records to return (max 100)
in: query
@@ -15572,7 +15451,6 @@ paths:
description: Number of records to skip for pagination
example: 0
minimum: 0
nullable: true
type: integer
- description: Maximum number of records to return (max 100)
in: query
@@ -15817,7 +15695,6 @@ paths:
description: Number of records to skip for pagination
example: 0
minimum: 0
nullable: true
type: integer
- description: Maximum number of records to return (max 100)
in: query
@@ -15896,7 +15773,6 @@ paths:
description: Number of records to skip for pagination
example: 0
minimum: 0
nullable: true
type: integer
- description: Maximum number of records to return (max 100)
in: query
@@ -16101,13 +15977,11 @@ paths:
description: Spending limit for the API key in USD
example: 100
format: double
nullable: true
type: number
limit_remaining:
description: Remaining spending limit in USD
example: 74.5
format: double
nullable: true
type: number
limit_reset:
description: Type of limit reset for the API key
@@ -16231,7 +16105,6 @@ paths:
description: Number of API keys to skip for pagination
example: 0
minimum: 0
nullable: true
type: integer
responses:
'200':
@@ -16365,13 +16238,11 @@ paths:
description: Spending limit for the API key in USD
example: 100
format: double
nullable: true
type: number
limit_remaining:
description: Remaining spending limit in USD
example: 74.5
format: double
nullable: true
type: number
limit_reset:
description: Type of limit reset for the API key
@@ -16513,7 +16384,6 @@ paths:
description: Optional spending limit for the API key in USD
example: 50
format: double
nullable: true
type: number
limit_reset:
description: >-
@@ -16669,13 +16539,11 @@ paths:
description: Spending limit for the API key in USD
example: 100
format: double
nullable: true
type: number
limit_remaining:
description: Remaining spending limit in USD
example: 74.5
format: double
nullable: true
type: number
limit_reset:
description: Type of limit reset for the API key
@@ -17004,13 +16872,11 @@ paths:
description: Spending limit for the API key in USD
example: 100
format: double
nullable: true
type: number
limit_remaining:
description: Remaining spending limit in USD
example: 74.5
format: double
nullable: true
type: number
limit_reset:
description: Type of limit reset for the API key
@@ -17156,7 +17022,6 @@ paths:
description: New spending limit for the API key in USD
example: 75
format: double
nullable: true
type: number
limit_reset:
description: >-
@@ -17307,13 +17172,11 @@ paths:
description: Spending limit for the API key in USD
example: 100
format: double
nullable: true
type: number
limit_remaining:
description: Remaining spending limit in USD
example: 74.5
format: double
nullable: true
type: number
limit_reset:
description: Type of limit reset for the API key
@@ -17983,7 +17846,6 @@ paths:
description: Number of records to skip for pagination
example: 0
minimum: 0
nullable: true
type: integer
- description: Maximum number of records to return (max 100)
in: query