Responses

POST /v1/responses — رابط جدید OpenAI برای SDKها و ایجنت‌های تازه.

POSThttps://iranrouter.com/v1/responses

رابط Responses اوپن‌ای‌آی — همان چیزی که client.responses.create و Agents SDK صدا می‌زنند. روی همان موتور chat/completions سوار است: درخواست ترجمه می‌شود، پاسخ به شکل Response یا رویدادهای stream همین رابط برمی‌گردد. مسیریابی، شارژ و failover یکسان‌اند.

Python
from openai import OpenAI

client = OpenAI(api_key="ir-...", base_url="https://iranrouter.com/v1")
resp = client.responses.create(
    model="openai/gpt-4o-mini",
    instructions="کوتاه جواب بده.",
    input="پایتخت ایران کجاست؟",
)
print(resp.output_text)

آنچه پشتیبانی می‌شود

پارامتررفتار
inputرشته، یا آرایهٔ item: پیام‌ها با بخش‌های input_text / input_image / input_file، و function_call / function_call_output نوبت‌های قبلی.
instructionsپیام system.
toolsفقط ابزار function. ابزارهای داخلی (web_search، file_search و …) با ۴۰۰ رد می‌شوند، نه اینکه بی‌صدا حذف شوند.
tool_choice / parallel_tool_callsپشتیبانی می‌شوند.
text.formatjson_object و json_schema (با name، schema، strict).
reasoning.effortبه مدل‌های استدلالی می‌رسد.
max_output_tokensسقف خروجی؛ مثل max_tokens مبنای رزرو کیف پول است.
streamرویدادهای SSE همین رابط: response.created، output_item.added، output_text.delta، function_call_arguments.delta، … و در پایان response.completed با کل Response.
previous_response_idپشتیبانی نمی‌شود (۴۰۰ unsupported_parameter): سرور حافظهٔ گفتگو ندارد؛ نوبت‌های قبلی را در input بفرستید.

پاسخ usage با نام‌های همین رابط می‌آید — input_tokens، output_tokens، input_tokens_details.cached_tokens، output_tokens_details.reasoning_tokens — به‌علاوهٔ cost_rial. status برابر incomplete با incomplete_details.reason = max_output_tokens یعنی سقف خروجی رسید.

Idempotency-Key روی این مسیر اعمال نمی‌شود؛ برای تلاش دوبارهٔ بی‌خطر از chat/completions استفاده کنید.

همان پارامترها روی chat/completions ←