@openrouter/sdk 0.9.11 → 0.11.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/FUNCTIONS.md +3 -2
- package/_speakeasy/.github/action-inputs-config.json +4 -0
- package/esm/funcs/analyticsGetUserActivity.js +2 -1
- package/esm/funcs/apiKeysCreate.js +2 -1
- package/esm/funcs/apiKeysDelete.js +2 -1
- package/esm/funcs/apiKeysGet.js +2 -1
- package/esm/funcs/apiKeysGetCurrentKeyMetadata.js +2 -1
- package/esm/funcs/apiKeysList.js +2 -1
- package/esm/funcs/apiKeysUpdate.js +2 -1
- package/esm/funcs/betaResponsesSend.d.ts +4 -4
- package/esm/funcs/betaResponsesSend.js +4 -5
- package/esm/funcs/call-model.d.ts +20 -71
- package/esm/funcs/call-model.js +30 -72
- package/esm/funcs/chatSend.d.ts +4 -4
- package/esm/funcs/chatSend.js +4 -5
- package/esm/funcs/creditsCreateCoinbaseCharge.js +2 -1
- package/esm/funcs/creditsGetCredits.js +2 -1
- package/esm/funcs/embeddingsGenerate.js +2 -1
- package/esm/funcs/embeddingsListModels.js +2 -1
- package/esm/funcs/endpointsList.js +2 -1
- package/esm/funcs/endpointsListZdrEndpoints.js +2 -1
- package/esm/funcs/generationsGetGeneration.js +2 -1
- package/esm/funcs/guardrailsBulkAssignKeys.js +2 -1
- package/esm/funcs/guardrailsBulkAssignMembers.js +2 -1
- package/esm/funcs/guardrailsBulkUnassignKeys.js +2 -1
- package/esm/funcs/guardrailsBulkUnassignMembers.js +2 -1
- package/esm/funcs/guardrailsCreate.js +2 -1
- package/esm/funcs/guardrailsDelete.js +2 -1
- package/esm/funcs/guardrailsGet.js +2 -1
- package/esm/funcs/guardrailsList.js +2 -1
- package/esm/funcs/guardrailsListGuardrailKeyAssignments.js +2 -1
- package/esm/funcs/guardrailsListGuardrailMemberAssignments.js +2 -1
- package/esm/funcs/guardrailsListKeyAssignments.js +2 -1
- package/esm/funcs/guardrailsListMemberAssignments.js +2 -1
- package/esm/funcs/guardrailsUpdate.js +2 -1
- package/esm/funcs/modelsCount.d.ts +1 -1
- package/esm/funcs/modelsCount.js +9 -4
- package/esm/funcs/modelsList.js +3 -1
- package/esm/funcs/modelsListForUser.js +2 -1
- package/esm/funcs/oAuthCreateAuthCode.d.ts +1 -1
- package/esm/funcs/oAuthCreateAuthCode.js +4 -3
- package/esm/funcs/oAuthExchangeAuthCodeForAPIKey.js +2 -1
- package/esm/funcs/providersList.js +2 -1
- package/esm/index.d.ts +5 -23
- package/esm/index.js +5 -25
- package/esm/lib/anthropic-compat.d.ts +3 -2
- package/esm/lib/anthropic-compat.js +10 -11
- package/esm/lib/anthropic-compat.test.js +2 -1
- package/esm/lib/async-params.d.ts +21 -7
- package/esm/lib/async-params.js +5 -1
- package/esm/lib/chat-compat.d.ts +2 -2
- package/esm/lib/chat-compat.js +9 -10
- package/esm/lib/chat-compat.test.js +3 -2
- package/esm/lib/claude-type-guards.d.ts +2 -2
- package/esm/lib/config.d.ts +9 -11
- package/esm/lib/config.js +3 -3
- package/esm/lib/conversation-state.d.ts +4 -4
- package/esm/lib/conversation-state.js +35 -32
- package/esm/lib/encodings.js +20 -5
- package/esm/lib/env.d.ts +6 -2
- package/esm/lib/env.js +7 -3
- package/esm/lib/event-streams.d.ts +11 -4
- package/esm/lib/event-streams.js +44 -22
- package/esm/lib/files.d.ts +13 -0
- package/esm/lib/files.js +18 -0
- package/esm/lib/matchers.js +0 -1
- package/esm/lib/model-result.d.ts +79 -28
- package/esm/lib/model-result.js +386 -167
- package/esm/lib/next-turn-params.d.ts +4 -4
- package/esm/lib/next-turn-params.js +1 -1
- package/esm/lib/sdks.d.ts +1 -1
- package/esm/lib/sdks.js +18 -34
- package/esm/lib/security.d.ts +1 -1
- package/esm/lib/security.js +20 -10
- package/esm/lib/stream-transformers.d.ts +45 -21
- package/esm/lib/stream-transformers.js +33 -38
- package/esm/lib/stream-type-guards.d.ts +15 -15
- package/esm/lib/stream-type-guards.js +8 -32
- package/esm/lib/tool-context.d.ts +68 -0
- package/esm/lib/tool-context.js +175 -0
- package/esm/lib/tool-executor.d.ts +9 -5
- package/esm/lib/tool-executor.js +26 -16
- package/esm/lib/tool-orchestrator.d.ts +4 -4
- package/esm/lib/tool-orchestrator.js +1 -1
- package/esm/lib/tool-types.d.ts +123 -22
- package/esm/lib/tool-types.js +23 -0
- package/esm/lib/tool.d.ts +49 -60
- package/esm/lib/tool.js +15 -19
- package/esm/lib/turn-context.d.ts +3 -3
- package/esm/lib/turn-context.js +1 -1
- package/esm/lib/url.js +4 -2
- package/esm/models/annotationaddedevent.d.ts +20 -0
- package/esm/models/annotationaddedevent.js +30 -0
- package/esm/models/applypatchservertool.d.ts +20 -0
- package/esm/models/applypatchservertool.js +21 -0
- package/esm/models/baseinputsunion.d.ts +185 -0
- package/esm/models/baseinputsunion.js +274 -0
- package/esm/models/basereasoningconfig.d.ts +13 -0
- package/esm/models/basereasoningconfig.js +17 -0
- package/esm/models/chatassistantimages.d.ts +33 -0
- package/esm/models/chatassistantimages.js +44 -0
- package/esm/models/chatassistantmessage.d.ts +86 -0
- package/esm/models/chatassistantmessage.js +70 -0
- package/esm/models/chataudiooutput.d.ts +38 -0
- package/esm/models/chataudiooutput.js +36 -0
- package/esm/models/chatchoice.d.ts +27 -0
- package/esm/models/chatchoice.js +25 -0
- package/esm/models/chatcontentaudio.d.ts +52 -0
- package/esm/models/chatcontentaudio.js +55 -0
- package/esm/models/chatcontentcachecontrol.d.ts +40 -0
- package/esm/models/chatcontentcachecontrol.js +39 -0
- package/esm/models/chatcontentfile.d.ts +57 -0
- package/esm/models/chatcontentfile.js +59 -0
- package/esm/models/chatcontentimage.d.ts +68 -0
- package/esm/models/chatcontentimage.js +68 -0
- package/esm/models/chatcontentitems.d.ts +31 -0
- package/esm/models/chatcontentitems.js +57 -0
- package/esm/models/chatcontenttext.d.ts +37 -0
- package/esm/models/chatcontenttext.js +42 -0
- package/esm/models/chatcontentvideo.d.ts +26 -0
- package/esm/models/chatcontentvideo.js +33 -0
- package/esm/models/chatcontentvideoinput.d.ts +23 -0
- package/esm/models/chatcontentvideoinput.js +21 -0
- package/esm/models/{debugoptions.d.ts → chatdebugoptions.d.ts} +5 -5
- package/esm/models/{debugoptions.js → chatdebugoptions.js} +5 -5
- package/esm/models/chatdevelopermessage.d.ts +35 -0
- package/esm/models/chatdevelopermessage.js +21 -0
- package/esm/models/chatfinishreasonenum.d.ts +13 -0
- package/esm/models/{chatcompletionfinishreason.js → chatfinishreasonenum.js} +4 -4
- package/esm/models/chatformatgrammarconfig.d.ts +20 -0
- package/esm/models/chatformatgrammarconfig.js +14 -0
- package/esm/models/chatformatjsonschemaconfig.d.ts +21 -0
- package/esm/models/chatformatjsonschemaconfig.js +20 -0
- package/esm/models/chatformatpythonconfig.d.ts +15 -0
- package/esm/models/chatformatpythonconfig.js +13 -0
- package/esm/models/chatformattextconfig.d.ts +15 -0
- package/esm/models/chatformattextconfig.js +13 -0
- package/esm/models/chatfunctiontool.d.ts +77 -0
- package/esm/models/chatfunctiontool.js +49 -0
- package/esm/models/{jsonschemaconfig.d.ts → chatjsonschemaconfig.d.ts} +5 -5
- package/esm/models/{jsonschemaconfig.js → chatjsonschemaconfig.js} +5 -5
- package/esm/models/chatmessages.d.ts +20 -0
- package/esm/models/chatmessages.js +22 -0
- package/esm/models/chatnamedtoolchoice.d.ts +37 -0
- package/esm/models/chatnamedtoolchoice.js +26 -0
- package/esm/models/chatreasoningsummaryverbosityenum.d.ts +11 -0
- package/esm/models/chatreasoningsummaryverbosityenum.js +13 -0
- package/esm/models/{chatgenerationparams.d.ts → chatrequest.d.ts} +213 -120
- package/esm/models/chatrequest.js +426 -0
- package/esm/models/chatresult.d.ts +50 -0
- package/esm/models/chatresult.js +35 -0
- package/esm/models/chatstreamchoice.d.ts +27 -0
- package/esm/models/chatstreamchoice.js +24 -0
- package/esm/models/{chatstreamingresponsechunk.d.ts → chatstreamchunk.d.ts} +17 -13
- package/esm/models/chatstreamchunk.js +43 -0
- package/esm/models/{chatstreamingmessagechunk.d.ts → chatstreamdelta.d.ts} +12 -10
- package/esm/models/chatstreamdelta.js +37 -0
- package/esm/models/chatstreamtoolcall.d.ts +57 -0
- package/esm/models/chatstreamtoolcall.js +33 -0
- package/esm/models/chatsystemmessage.d.ts +35 -0
- package/esm/models/chatsystemmessage.js +21 -0
- package/esm/models/chattokenlogprob.d.ts +36 -0
- package/esm/models/chattokenlogprob.js +31 -0
- package/esm/models/chattokenlogprobs.d.ts +21 -0
- package/esm/models/chattokenlogprobs.js +16 -0
- package/esm/models/chattoolcall.d.ts +57 -0
- package/esm/models/chattoolcall.js +49 -0
- package/esm/models/chattoolchoice.d.ts +31 -0
- package/esm/models/chattoolchoice.js +32 -0
- package/esm/models/chattoolmessage.d.ts +35 -0
- package/esm/models/chattoolmessage.js +26 -0
- package/esm/models/{chatgenerationtokenusage.d.ts → chatusage.d.ts} +4 -4
- package/esm/models/{chatgenerationtokenusage.js → chatusage.js} +5 -5
- package/esm/models/chatusermessage.d.ts +35 -0
- package/esm/models/chatusermessage.js +21 -0
- package/esm/models/chatwebsearchservertool.d.ts +124 -0
- package/esm/models/chatwebsearchservertool.js +84 -0
- package/esm/models/chatwebsearchshorthand.d.ts +219 -0
- package/esm/models/chatwebsearchshorthand.js +141 -0
- package/esm/models/codeinterpreterservertool.d.ts +68 -0
- package/esm/models/codeinterpreterservertool.js +85 -0
- package/esm/models/codexlocalshelltool.d.ts +20 -0
- package/esm/models/codexlocalshelltool.js +21 -0
- package/esm/models/compoundfilter.d.ts +36 -0
- package/esm/models/compoundfilter.js +32 -0
- package/esm/models/computeruseservertool.d.ts +39 -0
- package/esm/models/computeruseservertool.js +50 -0
- package/esm/models/conflictresponseerrordata.d.ts +17 -0
- package/esm/models/conflictresponseerrordata.js +16 -0
- package/esm/models/contentpartaddedevent.d.ts +29 -0
- package/esm/models/contentpartaddedevent.js +43 -0
- package/esm/models/contentpartdoneevent.d.ts +29 -0
- package/esm/models/contentpartdoneevent.js +43 -0
- package/esm/models/contextcompressionengine.d.ts +15 -0
- package/esm/models/contextcompressionengine.js +14 -0
- package/esm/models/customtool.d.ts +75 -0
- package/esm/models/customtool.js +96 -0
- package/esm/models/datetimeservertool.d.ts +37 -0
- package/esm/models/datetimeservertool.js +27 -0
- package/esm/models/defaultparameters.d.ts +3 -0
- package/esm/models/defaultparameters.js +6 -0
- package/esm/models/easyinputmessage.d.ts +120 -0
- package/esm/models/easyinputmessage.js +141 -0
- package/esm/models/{openresponseserrorevent.d.ts → errorevent.d.ts} +4 -4
- package/esm/models/{openresponseserrorevent.js → errorevent.js} +6 -5
- package/esm/models/errors/conflictresponseerror.d.ts +33 -0
- package/esm/models/errors/conflictresponseerror.js +42 -0
- package/esm/models/errors/index.d.ts +1 -0
- package/esm/models/errors/index.js +1 -0
- package/esm/models/filesearchservertool.d.ts +111 -0
- package/esm/models/filesearchservertool.js +180 -0
- package/esm/models/formatjsonobjectconfig.d.ts +20 -0
- package/esm/models/formatjsonobjectconfig.js +21 -0
- package/esm/models/formatjsonschemaconfig.d.ts +32 -0
- package/esm/models/formatjsonschemaconfig.js +29 -0
- package/esm/models/formats.d.ts +19 -0
- package/esm/models/formats.js +29 -0
- package/esm/models/formattextconfig.d.ts +20 -0
- package/esm/models/formattextconfig.js +21 -0
- package/esm/models/functioncallargsdeltaevent.d.ts +17 -0
- package/esm/models/functioncallargsdeltaevent.js +25 -0
- package/esm/models/functioncallargsdoneevent.d.ts +18 -0
- package/esm/models/functioncallargsdoneevent.js +26 -0
- package/esm/models/functioncallitem.d.ts +33 -0
- package/esm/models/functioncallitem.js +29 -0
- package/esm/models/functioncalloutputitem.d.ts +70 -0
- package/esm/models/functioncalloutputitem.js +79 -0
- package/esm/models/imagegencallcompletedevent.d.ts +16 -0
- package/esm/models/{openresponsesimagegencallcompleted.js → imagegencallcompletedevent.js} +5 -5
- package/esm/models/imagegencallgeneratingevent.d.ts +16 -0
- package/esm/models/{openresponsesimagegencallgenerating.js → imagegencallgeneratingevent.js} +5 -5
- package/esm/models/imagegencallinprogressevent.d.ts +16 -0
- package/esm/models/{openresponsesimagegencallinprogress.js → imagegencallinprogressevent.js} +5 -5
- package/esm/models/{openresponsesimagegencallpartialimage.d.ts → imagegencallpartialimageevent.d.ts} +4 -4
- package/esm/models/{openresponsesimagegencallpartialimage.js → imagegencallpartialimageevent.js} +5 -5
- package/esm/models/imagegenerationservertool.d.ts +125 -0
- package/esm/models/imagegenerationservertool.js +153 -0
- package/esm/models/{openairesponsesincompletedetails.d.ts → incompletedetails.d.ts} +4 -4
- package/esm/models/{openairesponsesincompletedetails.js → incompletedetails.js} +5 -5
- package/esm/models/index.d.ts +126 -95
- package/esm/models/index.js +126 -95
- package/esm/models/inputaudio.d.ts +47 -0
- package/esm/models/inputaudio.js +58 -0
- package/esm/models/{responseinputfile.d.ts → inputfile.d.ts} +7 -7
- package/esm/models/{responseinputfile.js → inputfile.js} +8 -8
- package/esm/models/inputimage.d.ts +43 -0
- package/esm/models/inputimage.js +52 -0
- package/esm/models/inputmessageitem.d.ts +84 -0
- package/esm/models/inputmessageitem.js +92 -0
- package/esm/models/inputsunion.d.ts +208 -0
- package/esm/models/inputsunion.js +228 -0
- package/esm/models/inputtext.d.ts +22 -0
- package/esm/models/inputtext.js +23 -0
- package/esm/models/inputvideo.d.ts +20 -0
- package/esm/models/{responseinputvideo.js → inputvideo.js} +5 -5
- package/esm/models/legacychatcontentvideo.d.ts +28 -0
- package/esm/models/legacychatcontentvideo.js +33 -0
- package/esm/models/legacywebsearchservertool.d.ts +78 -0
- package/esm/models/legacywebsearchservertool.js +87 -0
- package/esm/models/mcpservertool.d.ts +128 -0
- package/esm/models/mcpservertool.js +174 -0
- package/esm/models/model.d.ts +4 -0
- package/esm/models/model.js +2 -0
- package/esm/models/openairesponsestruncation.d.ts +1 -1
- package/esm/models/openairesponsestruncation.js +1 -1
- package/esm/models/openresponsesresult.d.ts +110 -0
- package/esm/models/openresponsesresult.js +142 -0
- package/esm/models/operations/bulkassignkeystoguardrail.d.ts +16 -3
- package/esm/models/operations/bulkassignkeystoguardrail.js +2 -2
- package/esm/models/operations/bulkassignmemberstoguardrail.d.ts +16 -3
- package/esm/models/operations/bulkassignmemberstoguardrail.js +2 -2
- package/esm/models/operations/bulkunassignkeysfromguardrail.d.ts +16 -3
- package/esm/models/operations/bulkunassignkeysfromguardrail.js +2 -2
- package/esm/models/operations/bulkunassignmembersfromguardrail.d.ts +16 -3
- package/esm/models/operations/bulkunassignmembersfromguardrail.js +2 -2
- package/esm/models/operations/createauthkeyscode.d.ts +16 -3
- package/esm/models/operations/createauthkeyscode.js +2 -2
- package/esm/models/operations/createcoinbasecharge.d.ts +16 -3
- package/esm/models/operations/createcoinbasecharge.js +2 -2
- package/esm/models/operations/createembeddings.d.ts +16 -3
- package/esm/models/operations/createembeddings.js +2 -2
- package/esm/models/operations/createguardrail.d.ts +25 -3
- package/esm/models/operations/createguardrail.js +6 -2
- package/esm/models/operations/createkeys.d.ts +20 -3
- package/esm/models/operations/createkeys.js +4 -2
- package/esm/models/operations/createresponses.d.ts +20 -7
- package/esm/models/operations/createresponses.js +8 -7
- package/esm/models/operations/deleteguardrail.d.ts +16 -3
- package/esm/models/operations/deleteguardrail.js +2 -2
- package/esm/models/operations/deletekeys.d.ts +16 -3
- package/esm/models/operations/deletekeys.js +2 -2
- package/esm/models/operations/exchangeauthcodeforapikey.d.ts +16 -3
- package/esm/models/operations/exchangeauthcodeforapikey.js +2 -2
- package/esm/models/operations/getcredits.d.ts +16 -3
- package/esm/models/operations/getcredits.js +2 -2
- package/esm/models/operations/getcurrentkey.d.ts +20 -3
- package/esm/models/operations/getcurrentkey.js +4 -2
- package/esm/models/operations/getgeneration.d.ts +27 -3
- package/esm/models/operations/getgeneration.js +9 -2
- package/esm/models/operations/getguardrail.d.ts +20 -3
- package/esm/models/operations/getguardrail.js +4 -2
- package/esm/models/operations/getkey.d.ts +20 -3
- package/esm/models/operations/getkey.js +4 -2
- package/esm/models/operations/getmodels.d.ts +21 -3
- package/esm/models/operations/getmodels.js +4 -2
- package/esm/models/operations/getuseractivity.d.ts +16 -3
- package/esm/models/operations/getuseractivity.js +2 -2
- package/esm/models/operations/list.d.ts +20 -3
- package/esm/models/operations/list.js +4 -2
- package/esm/models/operations/listembeddingsmodels.d.ts +16 -3
- package/esm/models/operations/listembeddingsmodels.js +2 -2
- package/esm/models/operations/listendpoints.d.ts +16 -3
- package/esm/models/operations/listendpoints.js +2 -2
- package/esm/models/operations/listendpointszdr.d.ts +16 -3
- package/esm/models/operations/listendpointszdr.js +2 -2
- package/esm/models/operations/listguardrailkeyassignments.d.ts +16 -3
- package/esm/models/operations/listguardrailkeyassignments.js +2 -2
- package/esm/models/operations/listguardrailmemberassignments.d.ts +16 -3
- package/esm/models/operations/listguardrailmemberassignments.js +2 -2
- package/esm/models/operations/listguardrails.d.ts +20 -3
- package/esm/models/operations/listguardrails.js +4 -2
- package/esm/models/operations/listkeyassignments.d.ts +16 -3
- package/esm/models/operations/listkeyassignments.js +2 -2
- package/esm/models/operations/listmemberassignments.d.ts +16 -3
- package/esm/models/operations/listmemberassignments.js +2 -2
- package/esm/models/operations/listmodelscount.d.ts +21 -3
- package/esm/models/operations/listmodelscount.js +4 -2
- package/esm/models/operations/listmodelsuser.d.ts +16 -3
- package/esm/models/operations/listmodelsuser.js +2 -2
- package/esm/models/operations/listproviders.d.ts +539 -3
- package/esm/models/operations/listproviders.js +514 -2
- package/esm/models/operations/sendchatcompletionrequest.d.ts +20 -7
- package/esm/models/operations/sendchatcompletionrequest.js +8 -7
- package/esm/models/operations/updateguardrail.d.ts +25 -3
- package/esm/models/operations/updateguardrail.js +6 -2
- package/esm/models/operations/updatekeys.d.ts +20 -3
- package/esm/models/operations/updatekeys.js +4 -2
- package/esm/models/outputdatetimeitem.d.ts +44 -0
- package/esm/models/outputdatetimeitem.js +30 -0
- package/esm/models/outputfilesearchcallitem.d.ts +33 -0
- package/esm/models/outputfilesearchcallitem.js +35 -0
- package/esm/models/outputfunctioncallitem.d.ts +69 -0
- package/esm/models/outputfunctioncallitem.js +94 -0
- package/esm/models/outputimagegenerationcallitem.d.ts +33 -0
- package/esm/models/outputimagegenerationcallitem.js +35 -0
- package/esm/models/outputitems.d.ts +18 -0
- package/esm/models/outputitems.js +28 -0
- package/esm/models/outputmessage.d.ts +23 -0
- package/esm/models/outputmessage.js +24 -0
- package/esm/models/outputmessageitem.d.ts +81 -0
- package/esm/models/outputmessageitem.js +93 -0
- package/esm/models/outputmodality.d.ts +1 -0
- package/esm/models/outputmodality.js +1 -0
- package/esm/models/outputmodalityenum.d.ts +10 -0
- package/esm/models/outputmodalityenum.js +12 -0
- package/esm/models/outputreasoningitem.d.ts +74 -0
- package/esm/models/outputreasoningitem.js +75 -0
- package/esm/models/outputservertoolitem.d.ts +42 -0
- package/esm/models/outputservertoolitem.js +44 -0
- package/esm/models/outputwebsearchcallitem.d.ts +116 -0
- package/esm/models/outputwebsearchcallitem.js +141 -0
- package/esm/models/pdfparserengine.d.ts +18 -9
- package/esm/models/pdfparserengine.js +17 -6
- package/esm/models/pdfparseroptions.d.ts +3 -3
- package/esm/models/preview20250311websearchservertool.d.ts +75 -0
- package/esm/models/preview20250311websearchservertool.js +89 -0
- package/esm/models/previewwebsearchservertool.d.ts +75 -0
- package/esm/models/previewwebsearchservertool.js +89 -0
- package/esm/models/previewwebsearchuserlocation.d.ts +34 -0
- package/esm/models/previewwebsearchuserlocation.js +36 -0
- package/esm/models/providername.d.ts +2 -0
- package/esm/models/providername.js +2 -0
- package/esm/models/providerpreferences.d.ts +7 -0
- package/esm/models/providerpreferences.js +4 -0
- package/esm/models/providersort.d.ts +1 -0
- package/esm/models/providersort.js +1 -0
- package/esm/models/providersortconfig.d.ts +1 -0
- package/esm/models/providersortconfig.js +1 -0
- package/esm/models/reasoningconfig.d.ts +23 -0
- package/esm/models/reasoningconfig.js +23 -0
- package/esm/models/{openresponsesreasoningdeltaevent.d.ts → reasoningdeltaevent.d.ts} +4 -4
- package/esm/models/{openresponsesreasoningdeltaevent.js → reasoningdeltaevent.js} +5 -5
- package/esm/models/{openresponsesreasoningdoneevent.d.ts → reasoningdoneevent.d.ts} +4 -4
- package/esm/models/{openresponsesreasoningdoneevent.js → reasoningdoneevent.js} +5 -5
- package/esm/models/reasoningeffortenum.d.ts +16 -0
- package/esm/models/reasoningeffortenum.js +18 -0
- package/esm/models/reasoningitem.d.ts +73 -0
- package/esm/models/reasoningitem.js +71 -0
- package/esm/models/{openresponsesreasoningsummarypartaddedevent.d.ts → reasoningsummarypartaddedevent.d.ts} +4 -4
- package/esm/models/{openresponsesreasoningsummarypartaddedevent.js → reasoningsummarypartaddedevent.js} +5 -5
- package/esm/models/reasoningsummarypartdoneevent.d.ts +19 -0
- package/esm/models/reasoningsummarypartdoneevent.js +28 -0
- package/esm/models/reasoningsummarytextdeltaevent.d.ts +18 -0
- package/esm/models/{openresponsesreasoningsummarytextdeltaevent.js → reasoningsummarytextdeltaevent.js} +5 -5
- package/esm/models/reasoningsummarytextdoneevent.d.ts +18 -0
- package/esm/models/{openresponsesreasoningsummarytextdoneevent.js → reasoningsummarytextdoneevent.js} +5 -5
- package/esm/models/reasoningsummaryverbosityenum.d.ts +13 -0
- package/esm/models/reasoningsummaryverbosityenum.js +15 -0
- package/esm/models/refusaldeltaevent.d.ts +18 -0
- package/esm/models/refusaldeltaevent.js +27 -0
- package/esm/models/refusaldoneevent.d.ts +18 -0
- package/esm/models/refusaldoneevent.js +27 -0
- package/esm/models/{openairesponsesincludable.d.ts → responseincludesenum.d.ts} +4 -4
- package/esm/models/{openairesponsesincludable.js → responseincludesenum.js} +4 -4
- package/esm/models/responseoutputtext.d.ts +8 -8
- package/esm/models/responseoutputtext.js +10 -9
- package/esm/models/responsesrequest.d.ts +499 -0
- package/esm/models/responsesrequest.js +347 -0
- package/esm/models/searchcontextsizeenum.d.ts +19 -0
- package/esm/models/searchcontextsizeenum.js +18 -0
- package/esm/models/shellservertool.d.ts +20 -0
- package/esm/models/shellservertool.js +21 -0
- package/esm/models/storedprompttemplate.d.ts +35 -0
- package/esm/models/storedprompttemplate.js +56 -0
- package/esm/models/streamevents.d.ts +136 -0
- package/esm/models/streamevents.js +165 -0
- package/esm/models/textconfig.d.ts +27 -0
- package/esm/models/textconfig.js +25 -0
- package/esm/models/textdeltaevent.d.ts +42 -0
- package/esm/models/textdeltaevent.js +52 -0
- package/esm/models/textdoneevent.d.ts +42 -0
- package/esm/models/textdoneevent.js +53 -0
- package/esm/models/textextendedconfig.d.ts +30 -0
- package/esm/models/textextendedconfig.js +23 -0
- package/esm/models/toolcallstatusenum.d.ts +13 -0
- package/esm/models/toolcallstatusenum.js +15 -0
- package/esm/models/truncationenum.d.ts +10 -0
- package/esm/models/truncationenum.js +12 -0
- package/esm/models/{openresponsesusage.d.ts → usage.d.ts} +4 -4
- package/esm/models/{openresponsesusage.js → usage.js} +5 -5
- package/esm/models/websearchcallcompletedevent.d.ts +16 -0
- package/esm/models/websearchcallcompletedevent.js +24 -0
- package/esm/models/websearchcallinprogressevent.d.ts +16 -0
- package/esm/models/websearchcallinprogressevent.js +24 -0
- package/esm/models/websearchcallsearchingevent.d.ts +16 -0
- package/esm/models/websearchcallsearchingevent.js +24 -0
- package/esm/models/websearchengine.d.ts +2 -0
- package/esm/models/websearchengine.js +2 -0
- package/esm/models/websearchservertool.d.ts +78 -0
- package/esm/models/websearchservertool.js +89 -0
- package/esm/models/websearchservertoolopenrouter.d.ts +35 -0
- package/esm/models/websearchservertoolopenrouter.js +28 -0
- package/esm/models/websearchuserlocation.d.ts +37 -0
- package/esm/models/websearchuserlocation.js +36 -0
- package/esm/sdk/chat.d.ts +4 -4
- package/esm/sdk/responses.d.ts +4 -4
- package/esm/sdk/sdk.d.ts +4 -1
- package/esm/sdk/sdk.js +0 -1
- package/esm/types/index.d.ts +0 -2
- package/esm/types/index.js +0 -1
- package/jsr.json +1 -1
- package/package.json +11 -11
- package/tsconfig.json +3 -1
- package/turbo.json +10 -0
- package/esm/models/assistantmessage.d.ts +0 -80
- package/esm/models/assistantmessage.js +0 -83
- package/esm/models/assistantmessageimages.d.ts +0 -33
- package/esm/models/assistantmessageimages.js +0 -44
- package/esm/models/chatcompletionfinishreason.d.ts +0 -13
- package/esm/models/chatgenerationparams.js +0 -371
- package/esm/models/chatmessagecontentitem.d.ts +0 -30
- package/esm/models/chatmessagecontentitem.js +0 -54
- package/esm/models/chatmessagecontentitemaudio.d.ts +0 -52
- package/esm/models/chatmessagecontentitemaudio.js +0 -55
- package/esm/models/chatmessagecontentitemcachecontrol.d.ts +0 -40
- package/esm/models/chatmessagecontentitemcachecontrol.js +0 -41
- package/esm/models/chatmessagecontentitemimage.d.ts +0 -68
- package/esm/models/chatmessagecontentitemimage.js +0 -68
- package/esm/models/chatmessagecontentitemtext.d.ts +0 -37
- package/esm/models/chatmessagecontentitemtext.js +0 -42
- package/esm/models/chatmessagecontentitemvideo.d.ts +0 -26
- package/esm/models/chatmessagecontentitemvideo.js +0 -33
- package/esm/models/chatmessagecontentitemvideolegacy.d.ts +0 -28
- package/esm/models/chatmessagecontentitemvideolegacy.js +0 -33
- package/esm/models/chatmessagetokenlogprob.d.ts +0 -36
- package/esm/models/chatmessagetokenlogprob.js +0 -31
- package/esm/models/chatmessagetokenlogprobs.d.ts +0 -21
- package/esm/models/chatmessagetokenlogprobs.js +0 -16
- package/esm/models/chatmessagetoolcall.d.ts +0 -57
- package/esm/models/chatmessagetoolcall.js +0 -48
- package/esm/models/chatresponse.d.ts +0 -46
- package/esm/models/chatresponse.js +0 -33
- package/esm/models/chatresponsechoice.d.ts +0 -27
- package/esm/models/chatresponsechoice.js +0 -24
- package/esm/models/chatstreamingchoice.d.ts +0 -27
- package/esm/models/chatstreamingchoice.js +0 -24
- package/esm/models/chatstreamingmessagechunk.js +0 -35
- package/esm/models/chatstreamingmessagetoolcall.d.ts +0 -57
- package/esm/models/chatstreamingmessagetoolcall.js +0 -34
- package/esm/models/chatstreamingresponsechunk.js +0 -41
- package/esm/models/developermessage.d.ts +0 -35
- package/esm/models/developermessage.js +0 -24
- package/esm/models/message.d.ts +0 -20
- package/esm/models/message.js +0 -23
- package/esm/models/namedtoolchoice.d.ts +0 -37
- package/esm/models/namedtoolchoice.js +0 -26
- package/esm/models/openairesponsesinputunion.d.ts +0 -154
- package/esm/models/openairesponsesinputunion.js +0 -222
- package/esm/models/openairesponsesprompt.d.ts +0 -35
- package/esm/models/openairesponsesprompt.js +0 -56
- package/esm/models/openairesponsesreasoningconfig.d.ts +0 -13
- package/esm/models/openairesponsesreasoningconfig.js +0 -17
- package/esm/models/openairesponsesreasoningeffort.d.ts +0 -16
- package/esm/models/openairesponsesreasoningeffort.js +0 -18
- package/esm/models/openairesponsesservicetier.d.ts +0 -13
- package/esm/models/openairesponsesservicetier.js +0 -15
- package/esm/models/openresponseseasyinputmessage.d.ts +0 -94
- package/esm/models/openresponseseasyinputmessage.js +0 -115
- package/esm/models/openresponsesfunctioncalloutput.d.ts +0 -31
- package/esm/models/openresponsesfunctioncalloutput.js +0 -28
- package/esm/models/openresponsesfunctiontoolcall.d.ts +0 -33
- package/esm/models/openresponsesfunctiontoolcall.js +0 -29
- package/esm/models/openresponsesimagegencallcompleted.d.ts +0 -16
- package/esm/models/openresponsesimagegencallgenerating.d.ts +0 -16
- package/esm/models/openresponsesimagegencallinprogress.d.ts +0 -16
- package/esm/models/openresponsesinput.d.ts +0 -28
- package/esm/models/openresponsesinput.js +0 -54
- package/esm/models/openresponsesinputmessageitem.d.ts +0 -84
- package/esm/models/openresponsesinputmessageitem.js +0 -92
- package/esm/models/openresponseslogprobs.d.ts +0 -16
- package/esm/models/openresponseslogprobs.js +0 -22
- package/esm/models/openresponsesnonstreamingresponse.d.ts +0 -102
- package/esm/models/openresponsesnonstreamingresponse.js +0 -117
- package/esm/models/openresponsesreasoning.d.ts +0 -73
- package/esm/models/openresponsesreasoning.js +0 -71
- package/esm/models/openresponsesreasoningconfig.d.ts +0 -23
- package/esm/models/openresponsesreasoningconfig.js +0 -23
- package/esm/models/openresponsesreasoningsummarytextdeltaevent.d.ts +0 -18
- package/esm/models/openresponsesreasoningsummarytextdoneevent.d.ts +0 -18
- package/esm/models/openresponsesrequest.d.ts +0 -451
- package/esm/models/openresponsesrequest.js +0 -300
- package/esm/models/openresponsesresponsetext.d.ts +0 -30
- package/esm/models/openresponsesresponsetext.js +0 -24
- package/esm/models/openresponsesstreamevent.d.ts +0 -287
- package/esm/models/openresponsesstreamevent.js +0 -379
- package/esm/models/openresponsestoplogprobs.d.ts +0 -14
- package/esm/models/openresponsestoplogprobs.js +0 -15
- package/esm/models/openresponseswebsearch20250826tool.d.ts +0 -47
- package/esm/models/openresponseswebsearch20250826tool.js +0 -64
- package/esm/models/openresponseswebsearchpreview20250311tool.d.ts +0 -29
- package/esm/models/openresponseswebsearchpreview20250311tool.js +0 -40
- package/esm/models/openresponseswebsearchpreviewtool.d.ts +0 -29
- package/esm/models/openresponseswebsearchpreviewtool.js +0 -40
- package/esm/models/openresponseswebsearchtool.d.ts +0 -47
- package/esm/models/openresponseswebsearchtool.js +0 -64
- package/esm/models/reasoningsummaryverbosity.d.ts +0 -13
- package/esm/models/reasoningsummaryverbosity.js +0 -15
- package/esm/models/responseformatjsonobject.d.ts +0 -20
- package/esm/models/responseformatjsonobject.js +0 -21
- package/esm/models/responseformatjsonschema.d.ts +0 -21
- package/esm/models/responseformatjsonschema.js +0 -20
- package/esm/models/responseformattext.d.ts +0 -15
- package/esm/models/responseformattext.js +0 -13
- package/esm/models/responseformattextconfig.d.ts +0 -19
- package/esm/models/responseformattextconfig.js +0 -28
- package/esm/models/responseformattextgrammar.d.ts +0 -20
- package/esm/models/responseformattextgrammar.js +0 -14
- package/esm/models/responseformattextpython.d.ts +0 -15
- package/esm/models/responseformattextpython.js +0 -13
- package/esm/models/responseinputaudio.d.ts +0 -47
- package/esm/models/responseinputaudio.js +0 -57
- package/esm/models/responseinputimage.d.ts +0 -43
- package/esm/models/responseinputimage.js +0 -51
- package/esm/models/responseinputtext.d.ts +0 -22
- package/esm/models/responseinputtext.js +0 -23
- package/esm/models/responseinputvideo.d.ts +0 -20
- package/esm/models/responsesformattext.d.ts +0 -20
- package/esm/models/responsesformattext.js +0 -21
- package/esm/models/responsesformattextjsonschemaconfig.d.ts +0 -32
- package/esm/models/responsesformattextjsonschemaconfig.js +0 -29
- package/esm/models/responsesimagegenerationcall.d.ts +0 -33
- package/esm/models/responsesimagegenerationcall.js +0 -35
- package/esm/models/responsesoutputitem.d.ts +0 -29
- package/esm/models/responsesoutputitem.js +0 -25
- package/esm/models/responsesoutputitemfilesearchcall.d.ts +0 -33
- package/esm/models/responsesoutputitemfilesearchcall.js +0 -35
- package/esm/models/responsesoutputitemfunctioncall.d.ts +0 -69
- package/esm/models/responsesoutputitemfunctioncall.js +0 -94
- package/esm/models/responsesoutputitemreasoning.d.ts +0 -103
- package/esm/models/responsesoutputitemreasoning.js +0 -118
- package/esm/models/responsesoutputmessage.d.ts +0 -89
- package/esm/models/responsesoutputmessage.js +0 -114
- package/esm/models/responsesoutputmodality.d.ts +0 -10
- package/esm/models/responsesoutputmodality.js +0 -12
- package/esm/models/responsessearchcontextsize.d.ts +0 -19
- package/esm/models/responsessearchcontextsize.js +0 -18
- package/esm/models/responseswebsearchcalloutput.d.ts +0 -31
- package/esm/models/responseswebsearchcalloutput.js +0 -33
- package/esm/models/responseswebsearchuserlocation.d.ts +0 -37
- package/esm/models/responseswebsearchuserlocation.js +0 -36
- package/esm/models/responsetextconfig.d.ts +0 -27
- package/esm/models/responsetextconfig.js +0 -24
- package/esm/models/systemmessage.d.ts +0 -35
- package/esm/models/systemmessage.js +0 -24
- package/esm/models/toolcallstatus.d.ts +0 -13
- package/esm/models/toolcallstatus.js +0 -15
- package/esm/models/toolchoiceoption.d.ts +0 -31
- package/esm/models/toolchoiceoption.js +0 -32
- package/esm/models/tooldefinitionjson.d.ts +0 -68
- package/esm/models/tooldefinitionjson.js +0 -36
- package/esm/models/toolresponsemessage.d.ts +0 -35
- package/esm/models/toolresponsemessage.js +0 -29
- package/esm/models/usermessage.d.ts +0 -35
- package/esm/models/usermessage.js +0 -24
- package/esm/models/videoinput.d.ts +0 -23
- package/esm/models/videoinput.js +0 -22
- package/esm/models/websearchpreviewtooluserlocation.d.ts +0 -34
- package/esm/models/websearchpreviewtooluserlocation.js +0 -36
package/FUNCTIONS.md
CHANGED
|
@@ -26,13 +26,14 @@ import { betaResponsesSend } from "@openrouter/sdk/funcs/betaResponsesSend.js";
|
|
|
26
26
|
// You can create one instance of it to use across an application.
|
|
27
27
|
const openRouter = new OpenRouterCore({
|
|
28
28
|
httpReferer: "<value>",
|
|
29
|
-
|
|
29
|
+
appTitle: "<value>",
|
|
30
|
+
appCategories: "<value>",
|
|
30
31
|
apiKey: process.env["OPENROUTER_API_KEY"] ?? "",
|
|
31
32
|
});
|
|
32
33
|
|
|
33
34
|
async function run() {
|
|
34
35
|
const res = await betaResponsesSend(openRouter, {
|
|
35
|
-
|
|
36
|
+
responsesRequest: {},
|
|
36
37
|
});
|
|
37
38
|
if (res.ok) {
|
|
38
39
|
const { value: result } = res;
|
|
@@ -34,7 +34,8 @@ async function $do(client, request, options) {
|
|
|
34
34
|
const headers = new Headers(compactMap({
|
|
35
35
|
Accept: "application/json",
|
|
36
36
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload?.["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
37
|
-
"X-
|
|
37
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload?.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
38
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload?.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
38
39
|
}));
|
|
39
40
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
40
41
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -32,7 +32,8 @@ async function $do(client, request, options) {
|
|
|
32
32
|
"Content-Type": "application/json",
|
|
33
33
|
Accept: "application/json",
|
|
34
34
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
35
|
-
"X-
|
|
35
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
36
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
36
37
|
}));
|
|
37
38
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
38
39
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -37,7 +37,8 @@ async function $do(client, request, options) {
|
|
|
37
37
|
const headers = new Headers(compactMap({
|
|
38
38
|
Accept: "application/json",
|
|
39
39
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
40
|
-
"X-
|
|
40
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
41
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
41
42
|
}));
|
|
42
43
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
43
44
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
package/esm/funcs/apiKeysGet.js
CHANGED
|
@@ -37,7 +37,8 @@ async function $do(client, request, options) {
|
|
|
37
37
|
const headers = new Headers(compactMap({
|
|
38
38
|
Accept: "application/json",
|
|
39
39
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
40
|
-
"X-
|
|
40
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
41
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
41
42
|
}));
|
|
42
43
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
43
44
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -31,7 +31,8 @@ async function $do(client, request, options) {
|
|
|
31
31
|
const headers = new Headers(compactMap({
|
|
32
32
|
Accept: "application/json",
|
|
33
33
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload?.["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
34
|
-
"X-
|
|
34
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload?.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
35
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload?.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
35
36
|
}));
|
|
36
37
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
37
38
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
package/esm/funcs/apiKeysList.js
CHANGED
|
@@ -35,7 +35,8 @@ async function $do(client, request, options) {
|
|
|
35
35
|
const headers = new Headers(compactMap({
|
|
36
36
|
Accept: "application/json",
|
|
37
37
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload?.["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
38
|
-
"X-
|
|
38
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload?.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
39
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload?.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
39
40
|
}));
|
|
40
41
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
41
42
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -38,7 +38,8 @@ async function $do(client, request, options) {
|
|
|
38
38
|
"Content-Type": "application/json",
|
|
39
39
|
Accept: "application/json",
|
|
40
40
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
41
|
-
"X-
|
|
41
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
42
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
42
43
|
}));
|
|
43
44
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
44
45
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -17,14 +17,14 @@ import { Result } from "../types/fp.js";
|
|
|
17
17
|
* Creates a streaming or non-streaming response using OpenResponses API format
|
|
18
18
|
*/
|
|
19
19
|
export declare function betaResponsesSend(client: OpenRouterCore, request: operations.CreateResponsesRequest & {
|
|
20
|
-
|
|
20
|
+
responsesRequest: {
|
|
21
21
|
stream?: false;
|
|
22
22
|
};
|
|
23
|
-
}, options?: RequestOptions): APIPromise<Result<models.
|
|
23
|
+
}, options?: RequestOptions): APIPromise<Result<models.OpenResponsesResult, errors.BadRequestResponseError | errors.UnauthorizedResponseError | errors.PaymentRequiredResponseError | errors.NotFoundResponseError | errors.RequestTimeoutResponseError | errors.PayloadTooLargeResponseError | errors.UnprocessableEntityResponseError | errors.TooManyRequestsResponseError | errors.InternalServerResponseError | errors.BadGatewayResponseError | errors.ServiceUnavailableResponseError | errors.EdgeNetworkTimeoutResponseError | errors.ProviderOverloadedResponseError | OpenRouterError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError>>;
|
|
24
24
|
export declare function betaResponsesSend(client: OpenRouterCore, request: operations.CreateResponsesRequest & {
|
|
25
|
-
|
|
25
|
+
responsesRequest: {
|
|
26
26
|
stream: true;
|
|
27
27
|
};
|
|
28
|
-
}, options?: RequestOptions): APIPromise<Result<EventStream<models.
|
|
28
|
+
}, options?: RequestOptions): APIPromise<Result<EventStream<models.StreamEvents>, errors.BadRequestResponseError | errors.UnauthorizedResponseError | errors.PaymentRequiredResponseError | errors.NotFoundResponseError | errors.RequestTimeoutResponseError | errors.PayloadTooLargeResponseError | errors.UnprocessableEntityResponseError | errors.TooManyRequestsResponseError | errors.InternalServerResponseError | errors.BadGatewayResponseError | errors.ServiceUnavailableResponseError | errors.EdgeNetworkTimeoutResponseError | errors.ProviderOverloadedResponseError | OpenRouterError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError>>;
|
|
29
29
|
export declare function betaResponsesSend(client: OpenRouterCore, request: operations.CreateResponsesRequest, options?: RequestOptions): APIPromise<Result<operations.CreateResponsesResponse, errors.BadRequestResponseError | errors.UnauthorizedResponseError | errors.PaymentRequiredResponseError | errors.NotFoundResponseError | errors.RequestTimeoutResponseError | errors.PayloadTooLargeResponseError | errors.UnprocessableEntityResponseError | errors.TooManyRequestsResponseError | errors.InternalServerResponseError | errors.BadGatewayResponseError | errors.ServiceUnavailableResponseError | errors.EdgeNetworkTimeoutResponseError | errors.ProviderOverloadedResponseError | OpenRouterError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError>>;
|
|
30
30
|
//# sourceMappingURL=betaResponsesSend.d.ts.map
|
|
@@ -20,17 +20,16 @@ async function $do(client, request, options) {
|
|
|
20
20
|
return [parsed, { status: "invalid" }];
|
|
21
21
|
}
|
|
22
22
|
const payload = parsed.value;
|
|
23
|
-
const body = encodeJSON("body", payload.
|
|
24
|
-
explode: true,
|
|
25
|
-
});
|
|
23
|
+
const body = encodeJSON("body", payload.ResponsesRequest, { explode: true });
|
|
26
24
|
const path = pathToFunc("/responses")();
|
|
27
25
|
const headers = new Headers(compactMap({
|
|
28
26
|
"Content-Type": "application/json",
|
|
29
|
-
Accept: request?.
|
|
27
|
+
Accept: request?.responsesRequest?.stream
|
|
30
28
|
? "text/event-stream"
|
|
31
29
|
: "application/json",
|
|
32
30
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
33
|
-
"X-
|
|
31
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
32
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
34
33
|
}));
|
|
35
34
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
36
35
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { $ZodObject, $ZodShape, infer as zodInfer } from 'zod/v4/core';
|
|
1
2
|
import type { OpenRouterCore } from '../core.js';
|
|
2
3
|
import type { CallModelInput } from '../lib/async-params.js';
|
|
3
4
|
import type { RequestOptions } from '../lib/sdks.js';
|
|
@@ -18,66 +19,35 @@ export type { CallModelInput } from '../lib/async-params.js';
|
|
|
18
19
|
* - `for await (const event of response.getToolStream())` - Stream tool events (incl. preliminary results)
|
|
19
20
|
* - `for await (const toolCall of response.getToolCallsStream())` - Stream structured tool calls
|
|
20
21
|
* - `await response.getToolCalls()` - Get all tool calls from completed response
|
|
21
|
-
* - `for await (const msg of response.getNewMessagesStream())` - Stream
|
|
22
|
+
* - `for await (const msg of response.getNewMessagesStream())` - Stream cumulative message snapshots
|
|
22
23
|
* - `for await (const event of response.getFullResponsesStream())` - Stream all events (incl. tool preliminary)
|
|
23
24
|
*
|
|
24
25
|
* All consumption patterns can be used concurrently on the same response.
|
|
25
26
|
*
|
|
26
|
-
*
|
|
27
|
-
* - `fromChatMessages()` / `toChatMessage()` for OpenAI chat format
|
|
28
|
-
* - `fromClaudeMessages()` / `toClaudeMessage()` for Anthropic Claude format
|
|
27
|
+
* **Context:**
|
|
29
28
|
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
* Any field in CallModelInput can be a function that computes the value dynamically
|
|
33
|
-
* based on the conversation context. You can mix static values and functions in the
|
|
34
|
-
* same request. Functions are resolved before EVERY turn, allowing parameters to
|
|
35
|
-
* adapt as the conversation progresses.
|
|
36
|
-
*
|
|
37
|
-
* @example
|
|
38
|
-
* ```typescript
|
|
39
|
-
* // Mix static and dynamic values
|
|
40
|
-
* const result = callModel(client, {
|
|
41
|
-
* model: 'gpt-4', // static
|
|
42
|
-
* temperature: (ctx) => Math.min(ctx.numberOfTurns * 0.2, 1.0), // dynamic
|
|
43
|
-
* input: [{ type: 'text', text: 'Hello' }], // static
|
|
44
|
-
* });
|
|
45
|
-
* ```
|
|
46
|
-
*
|
|
47
|
-
* @example
|
|
48
|
-
* ```typescript
|
|
49
|
-
* // Switch models based on conversation length
|
|
50
|
-
* const result = callModel(client, {
|
|
51
|
-
* model: (ctx) => ctx.numberOfTurns > 3 ? 'gpt-4' : 'gpt-3.5-turbo',
|
|
52
|
-
* input: [{ type: 'text', text: 'Complex question' }],
|
|
53
|
-
* });
|
|
54
|
-
* ```
|
|
29
|
+
* Tools can declare a `contextSchema` to receive typed context data.
|
|
30
|
+
* The `context` parameter on callModel is typed as the intersection of all tool schemas:
|
|
55
31
|
*
|
|
56
32
|
* @example
|
|
57
33
|
* ```typescript
|
|
58
|
-
* // Use async functions to fetch dynamic values
|
|
59
34
|
* const result = callModel(client, {
|
|
60
35
|
* model: 'gpt-4',
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
36
|
+
* input: 'Hello',
|
|
37
|
+
* tools: [weatherTool, dbTool] as const,
|
|
38
|
+
* context: {
|
|
39
|
+
* get_weather: { apiKey: 'sk-...' },
|
|
40
|
+
* db_query: { dbUrl: 'postgres://...' },
|
|
64
41
|
* },
|
|
65
|
-
* input: [{ type: 'text', text: 'Help me' }],
|
|
66
42
|
* });
|
|
67
43
|
* ```
|
|
68
44
|
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
*
|
|
75
|
-
* **Execution Order:**
|
|
76
|
-
* Functions are resolved at the START of each turn in this order:
|
|
77
|
-
* 1. Async functions (parallel resolution)
|
|
78
|
-
* 2. Tool execution (if tools called by model)
|
|
79
|
-
* 3. nextTurnParams functions (if defined on tools)
|
|
80
|
-
* 4. API request with resolved values
|
|
45
|
+
* Context can also be a function or async function:
|
|
46
|
+
* ```typescript
|
|
47
|
+
* context: (turn) => ({
|
|
48
|
+
* get_weather: { apiKey: turn.numberOfTurns > 1 ? refreshedKey : initialKey },
|
|
49
|
+
* })
|
|
50
|
+
* ```
|
|
81
51
|
*
|
|
82
52
|
* **Stop Conditions:**
|
|
83
53
|
*
|
|
@@ -85,34 +55,13 @@ export type { CallModelInput } from '../lib/async-params.js';
|
|
|
85
55
|
*
|
|
86
56
|
* @example
|
|
87
57
|
* ```typescript
|
|
88
|
-
* // Stop after 3 steps
|
|
89
58
|
* stopWhen: stepCountIs(3)
|
|
90
|
-
*
|
|
91
|
-
* // Stop when a specific tool is called
|
|
92
|
-
* stopWhen: hasToolCall('finalizeResults')
|
|
93
|
-
*
|
|
94
|
-
* // Multiple conditions (OR logic - stops if ANY is true)
|
|
95
|
-
* stopWhen: [
|
|
96
|
-
* stepCountIs(10), // Safety: max 10 steps
|
|
97
|
-
* maxCost(0.50), // Budget: max $0.50
|
|
98
|
-
* hasToolCall('finalize') // Logic: stop when finalize called
|
|
99
|
-
* ]
|
|
100
|
-
*
|
|
101
|
-
* // Custom condition with full step history
|
|
102
|
-
* stopWhen: ({ steps }) => {
|
|
103
|
-
* const totalCalls = steps.reduce((sum, s) => sum + s.toolCalls.length, 0);
|
|
104
|
-
* return totalCalls >= 20; // Stop after 20 total tool calls
|
|
105
|
-
* }
|
|
59
|
+
* stopWhen: [stepCountIs(10), maxCost(0.50), hasToolCall('finalize')]
|
|
106
60
|
* ```
|
|
107
61
|
*
|
|
108
|
-
* Available helper functions:
|
|
109
|
-
* - `stepCountIs(n)` - Stop after n steps
|
|
110
|
-
* - `hasToolCall(name)` - Stop when tool is called
|
|
111
|
-
* - `maxTokensUsed(n)` - Stop when token usage exceeds n
|
|
112
|
-
* - `maxCost(n)` - Stop when cost exceeds n dollars
|
|
113
|
-
* - `finishReasonIs(reason)` - Stop on specific finish reason
|
|
114
|
-
*
|
|
115
62
|
* Default: `stepCountIs(5)` if not specified
|
|
116
63
|
*/
|
|
117
|
-
export declare function callModel<TTools extends readonly Tool[]>(client: OpenRouterCore, request: CallModelInput<TTools
|
|
64
|
+
export declare function callModel<TTools extends readonly Tool[], TSharedSchema extends $ZodObject<$ZodShape> | undefined = undefined, TShared extends Record<string, unknown> = TSharedSchema extends $ZodObject<$ZodShape> ? zodInfer<TSharedSchema> : Record<string, never>>(client: OpenRouterCore, request: CallModelInput<TTools, TShared> & {
|
|
65
|
+
sharedContextSchema?: TSharedSchema;
|
|
66
|
+
}, options?: RequestOptions): ModelResult<TTools, TShared>;
|
|
118
67
|
//# sourceMappingURL=call-model.d.ts.map
|
package/esm/funcs/call-model.js
CHANGED
|
@@ -14,66 +14,35 @@ import { convertToolsToAPIFormat } from '../lib/tool-executor.js';
|
|
|
14
14
|
* - `for await (const event of response.getToolStream())` - Stream tool events (incl. preliminary results)
|
|
15
15
|
* - `for await (const toolCall of response.getToolCallsStream())` - Stream structured tool calls
|
|
16
16
|
* - `await response.getToolCalls()` - Get all tool calls from completed response
|
|
17
|
-
* - `for await (const msg of response.getNewMessagesStream())` - Stream
|
|
17
|
+
* - `for await (const msg of response.getNewMessagesStream())` - Stream cumulative message snapshots
|
|
18
18
|
* - `for await (const event of response.getFullResponsesStream())` - Stream all events (incl. tool preliminary)
|
|
19
19
|
*
|
|
20
20
|
* All consumption patterns can be used concurrently on the same response.
|
|
21
21
|
*
|
|
22
|
-
*
|
|
23
|
-
* - `fromChatMessages()` / `toChatMessage()` for OpenAI chat format
|
|
24
|
-
* - `fromClaudeMessages()` / `toClaudeMessage()` for Anthropic Claude format
|
|
22
|
+
* **Context:**
|
|
25
23
|
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
* Any field in CallModelInput can be a function that computes the value dynamically
|
|
29
|
-
* based on the conversation context. You can mix static values and functions in the
|
|
30
|
-
* same request. Functions are resolved before EVERY turn, allowing parameters to
|
|
31
|
-
* adapt as the conversation progresses.
|
|
24
|
+
* Tools can declare a `contextSchema` to receive typed context data.
|
|
25
|
+
* The `context` parameter on callModel is typed as the intersection of all tool schemas:
|
|
32
26
|
*
|
|
33
27
|
* @example
|
|
34
28
|
* ```typescript
|
|
35
|
-
* // Mix static and dynamic values
|
|
36
|
-
* const result = callModel(client, {
|
|
37
|
-
* model: 'gpt-4', // static
|
|
38
|
-
* temperature: (ctx) => Math.min(ctx.numberOfTurns * 0.2, 1.0), // dynamic
|
|
39
|
-
* input: [{ type: 'text', text: 'Hello' }], // static
|
|
40
|
-
* });
|
|
41
|
-
* ```
|
|
42
|
-
*
|
|
43
|
-
* @example
|
|
44
|
-
* ```typescript
|
|
45
|
-
* // Switch models based on conversation length
|
|
46
|
-
* const result = callModel(client, {
|
|
47
|
-
* model: (ctx) => ctx.numberOfTurns > 3 ? 'gpt-4' : 'gpt-3.5-turbo',
|
|
48
|
-
* input: [{ type: 'text', text: 'Complex question' }],
|
|
49
|
-
* });
|
|
50
|
-
* ```
|
|
51
|
-
*
|
|
52
|
-
* @example
|
|
53
|
-
* ```typescript
|
|
54
|
-
* // Use async functions to fetch dynamic values
|
|
55
29
|
* const result = callModel(client, {
|
|
56
30
|
* model: 'gpt-4',
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
31
|
+
* input: 'Hello',
|
|
32
|
+
* tools: [weatherTool, dbTool] as const,
|
|
33
|
+
* context: {
|
|
34
|
+
* get_weather: { apiKey: 'sk-...' },
|
|
35
|
+
* db_query: { dbUrl: 'postgres://...' },
|
|
60
36
|
* },
|
|
61
|
-
* input: [{ type: 'text', text: 'Help me' }],
|
|
62
37
|
* });
|
|
63
38
|
* ```
|
|
64
39
|
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
* **Execution Order:**
|
|
72
|
-
* Functions are resolved at the START of each turn in this order:
|
|
73
|
-
* 1. Async functions (parallel resolution)
|
|
74
|
-
* 2. Tool execution (if tools called by model)
|
|
75
|
-
* 3. nextTurnParams functions (if defined on tools)
|
|
76
|
-
* 4. API request with resolved values
|
|
40
|
+
* Context can also be a function or async function:
|
|
41
|
+
* ```typescript
|
|
42
|
+
* context: (turn) => ({
|
|
43
|
+
* get_weather: { apiKey: turn.numberOfTurns > 1 ? refreshedKey : initialKey },
|
|
44
|
+
* })
|
|
45
|
+
* ```
|
|
77
46
|
*
|
|
78
47
|
* **Stop Conditions:**
|
|
79
48
|
*
|
|
@@ -81,38 +50,15 @@ import { convertToolsToAPIFormat } from '../lib/tool-executor.js';
|
|
|
81
50
|
*
|
|
82
51
|
* @example
|
|
83
52
|
* ```typescript
|
|
84
|
-
* // Stop after 3 steps
|
|
85
53
|
* stopWhen: stepCountIs(3)
|
|
86
|
-
*
|
|
87
|
-
* // Stop when a specific tool is called
|
|
88
|
-
* stopWhen: hasToolCall('finalizeResults')
|
|
89
|
-
*
|
|
90
|
-
* // Multiple conditions (OR logic - stops if ANY is true)
|
|
91
|
-
* stopWhen: [
|
|
92
|
-
* stepCountIs(10), // Safety: max 10 steps
|
|
93
|
-
* maxCost(0.50), // Budget: max $0.50
|
|
94
|
-
* hasToolCall('finalize') // Logic: stop when finalize called
|
|
95
|
-
* ]
|
|
96
|
-
*
|
|
97
|
-
* // Custom condition with full step history
|
|
98
|
-
* stopWhen: ({ steps }) => {
|
|
99
|
-
* const totalCalls = steps.reduce((sum, s) => sum + s.toolCalls.length, 0);
|
|
100
|
-
* return totalCalls >= 20; // Stop after 20 total tool calls
|
|
101
|
-
* }
|
|
54
|
+
* stopWhen: [stepCountIs(10), maxCost(0.50), hasToolCall('finalize')]
|
|
102
55
|
* ```
|
|
103
56
|
*
|
|
104
|
-
* Available helper functions:
|
|
105
|
-
* - `stepCountIs(n)` - Stop after n steps
|
|
106
|
-
* - `hasToolCall(name)` - Stop when tool is called
|
|
107
|
-
* - `maxTokensUsed(n)` - Stop when token usage exceeds n
|
|
108
|
-
* - `maxCost(n)` - Stop when cost exceeds n dollars
|
|
109
|
-
* - `finishReasonIs(reason)` - Stop on specific finish reason
|
|
110
|
-
*
|
|
111
57
|
* Default: `stepCountIs(5)` if not specified
|
|
112
58
|
*/
|
|
113
59
|
export function callModel(client, request, options) {
|
|
114
60
|
// Destructure state management options along with tools and stopWhen
|
|
115
|
-
const { tools, stopWhen, state, requireApproval, approveToolCalls, rejectToolCalls, ...apiRequest } = request;
|
|
61
|
+
const { tools, stopWhen, state, requireApproval, approveToolCalls, rejectToolCalls, context, sharedContextSchema, onTurnStart, onTurnEnd, ...apiRequest } = request;
|
|
116
62
|
// Convert tools to API format - no cast needed now that convertToolsToAPIFormat accepts readonly
|
|
117
63
|
const apiTools = tools ? convertToolsToAPIFormat(tools) : undefined;
|
|
118
64
|
// Build the request with converted tools
|
|
@@ -124,10 +70,18 @@ export function callModel(client, request, options) {
|
|
|
124
70
|
if (apiTools !== undefined) {
|
|
125
71
|
finalRequest['tools'] = apiTools;
|
|
126
72
|
}
|
|
73
|
+
// Inject x-openrouter-callmodel header into every callModel request
|
|
74
|
+
const callModelOptions = {
|
|
75
|
+
...options,
|
|
76
|
+
headers: {
|
|
77
|
+
...Object.fromEntries(new Headers(options?.headers ?? options?.fetchOptions?.headers ?? undefined)),
|
|
78
|
+
'x-openrouter-callmodel': 'true',
|
|
79
|
+
},
|
|
80
|
+
};
|
|
127
81
|
return new ModelResult({
|
|
128
82
|
client,
|
|
129
83
|
request: finalRequest,
|
|
130
|
-
options:
|
|
84
|
+
options: callModelOptions,
|
|
131
85
|
tools,
|
|
132
86
|
...(stopWhen !== undefined && { stopWhen }),
|
|
133
87
|
// Pass state management options
|
|
@@ -135,6 +89,10 @@ export function callModel(client, request, options) {
|
|
|
135
89
|
...(requireApproval !== undefined && { requireApproval }),
|
|
136
90
|
...(approveToolCalls !== undefined && { approveToolCalls }),
|
|
137
91
|
...(rejectToolCalls !== undefined && { rejectToolCalls }),
|
|
92
|
+
...(context !== undefined && { context }),
|
|
93
|
+
...(sharedContextSchema !== undefined && { sharedContextSchema }),
|
|
94
|
+
...(onTurnStart !== undefined && { onTurnStart }),
|
|
95
|
+
...(onTurnEnd !== undefined && { onTurnEnd }),
|
|
138
96
|
});
|
|
139
97
|
}
|
|
140
98
|
//# sourceMappingURL=call-model.js.map
|
package/esm/funcs/chatSend.d.ts
CHANGED
|
@@ -17,14 +17,14 @@ import { Result } from "../types/fp.js";
|
|
|
17
17
|
* Sends a request for a model response for the given chat conversation. Supports both streaming and non-streaming modes.
|
|
18
18
|
*/
|
|
19
19
|
export declare function chatSend(client: OpenRouterCore, request: operations.SendChatCompletionRequestRequest & {
|
|
20
|
-
|
|
20
|
+
chatRequest: {
|
|
21
21
|
stream?: false;
|
|
22
22
|
};
|
|
23
|
-
}, options?: RequestOptions): APIPromise<Result<models.
|
|
23
|
+
}, options?: RequestOptions): APIPromise<Result<models.ChatResult, errors.BadRequestResponseError | errors.UnauthorizedResponseError | errors.PaymentRequiredResponseError | errors.NotFoundResponseError | errors.RequestTimeoutResponseError | errors.PayloadTooLargeResponseError | errors.UnprocessableEntityResponseError | errors.TooManyRequestsResponseError | errors.InternalServerResponseError | errors.BadGatewayResponseError | errors.ServiceUnavailableResponseError | errors.EdgeNetworkTimeoutResponseError | errors.ProviderOverloadedResponseError | OpenRouterError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError>>;
|
|
24
24
|
export declare function chatSend(client: OpenRouterCore, request: operations.SendChatCompletionRequestRequest & {
|
|
25
|
-
|
|
25
|
+
chatRequest: {
|
|
26
26
|
stream: true;
|
|
27
27
|
};
|
|
28
|
-
}, options?: RequestOptions): APIPromise<Result<EventStream<models.
|
|
28
|
+
}, options?: RequestOptions): APIPromise<Result<EventStream<models.ChatStreamChunk>, errors.BadRequestResponseError | errors.UnauthorizedResponseError | errors.PaymentRequiredResponseError | errors.NotFoundResponseError | errors.RequestTimeoutResponseError | errors.PayloadTooLargeResponseError | errors.UnprocessableEntityResponseError | errors.TooManyRequestsResponseError | errors.InternalServerResponseError | errors.BadGatewayResponseError | errors.ServiceUnavailableResponseError | errors.EdgeNetworkTimeoutResponseError | errors.ProviderOverloadedResponseError | OpenRouterError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError>>;
|
|
29
29
|
export declare function chatSend(client: OpenRouterCore, request: operations.SendChatCompletionRequestRequest, options?: RequestOptions): APIPromise<Result<operations.SendChatCompletionRequestResponse, errors.BadRequestResponseError | errors.UnauthorizedResponseError | errors.PaymentRequiredResponseError | errors.NotFoundResponseError | errors.RequestTimeoutResponseError | errors.PayloadTooLargeResponseError | errors.UnprocessableEntityResponseError | errors.TooManyRequestsResponseError | errors.InternalServerResponseError | errors.BadGatewayResponseError | errors.ServiceUnavailableResponseError | errors.EdgeNetworkTimeoutResponseError | errors.ProviderOverloadedResponseError | OpenRouterError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError>>;
|
|
30
30
|
//# sourceMappingURL=chatSend.d.ts.map
|
package/esm/funcs/chatSend.js
CHANGED
|
@@ -20,17 +20,16 @@ async function $do(client, request, options) {
|
|
|
20
20
|
return [parsed, { status: "invalid" }];
|
|
21
21
|
}
|
|
22
22
|
const payload = parsed.value;
|
|
23
|
-
const body = encodeJSON("body", payload.
|
|
24
|
-
explode: true,
|
|
25
|
-
});
|
|
23
|
+
const body = encodeJSON("body", payload.ChatRequest, { explode: true });
|
|
26
24
|
const path = pathToFunc("/chat/completions")();
|
|
27
25
|
const headers = new Headers(compactMap({
|
|
28
26
|
"Content-Type": "application/json",
|
|
29
|
-
Accept: request?.
|
|
27
|
+
Accept: request?.chatRequest?.stream
|
|
30
28
|
? "text/event-stream"
|
|
31
29
|
: "application/json",
|
|
32
30
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
33
|
-
"X-
|
|
31
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
32
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
34
33
|
}));
|
|
35
34
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
36
35
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -34,7 +34,8 @@ async function $do(client, security, request, options) {
|
|
|
34
34
|
"Content-Type": "application/json",
|
|
35
35
|
Accept: "application/json",
|
|
36
36
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
37
|
-
"X-
|
|
37
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
38
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
38
39
|
}));
|
|
39
40
|
const requestSecurity = resolveSecurity([
|
|
40
41
|
{
|
|
@@ -31,7 +31,8 @@ async function $do(client, request, options) {
|
|
|
31
31
|
const headers = new Headers(compactMap({
|
|
32
32
|
Accept: "application/json",
|
|
33
33
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload?.["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
34
|
-
"X-
|
|
34
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload?.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
35
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload?.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
35
36
|
}));
|
|
36
37
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
37
38
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -32,7 +32,8 @@ async function $do(client, request, options) {
|
|
|
32
32
|
"Content-Type": "application/json",
|
|
33
33
|
Accept: "application/json;q=1, text/event-stream;q=0",
|
|
34
34
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
35
|
-
"X-
|
|
35
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
36
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
36
37
|
}));
|
|
37
38
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
38
39
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -32,7 +32,8 @@ async function $do(client, request, options) {
|
|
|
32
32
|
const headers = new Headers(compactMap({
|
|
33
33
|
Accept: "application/json",
|
|
34
34
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload?.["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
35
|
-
"X-
|
|
35
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload?.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
36
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload?.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
36
37
|
}));
|
|
37
38
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
38
39
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -38,7 +38,8 @@ async function $do(client, request, options) {
|
|
|
38
38
|
const headers = new Headers(compactMap({
|
|
39
39
|
Accept: "application/json",
|
|
40
40
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
41
|
-
"X-
|
|
41
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
42
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
42
43
|
}));
|
|
43
44
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
44
45
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -28,7 +28,8 @@ async function $do(client, request, options) {
|
|
|
28
28
|
const headers = new Headers(compactMap({
|
|
29
29
|
Accept: "application/json",
|
|
30
30
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload?.["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
31
|
-
"X-
|
|
31
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload?.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
32
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload?.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
32
33
|
}));
|
|
33
34
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
34
35
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -31,7 +31,8 @@ async function $do(client, request, options) {
|
|
|
31
31
|
const headers = new Headers(compactMap({
|
|
32
32
|
Accept: "application/json",
|
|
33
33
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
34
|
-
"X-
|
|
34
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
35
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
35
36
|
}));
|
|
36
37
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
37
38
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -38,7 +38,8 @@ async function $do(client, request, options) {
|
|
|
38
38
|
"Content-Type": "application/json",
|
|
39
39
|
Accept: "application/json",
|
|
40
40
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
41
|
-
"X-
|
|
41
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
42
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
42
43
|
}));
|
|
43
44
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
44
45
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -38,7 +38,8 @@ async function $do(client, request, options) {
|
|
|
38
38
|
"Content-Type": "application/json",
|
|
39
39
|
Accept: "application/json",
|
|
40
40
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
41
|
-
"X-
|
|
41
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
42
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
42
43
|
}));
|
|
43
44
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
44
45
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -38,7 +38,8 @@ async function $do(client, request, options) {
|
|
|
38
38
|
"Content-Type": "application/json",
|
|
39
39
|
Accept: "application/json",
|
|
40
40
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
41
|
-
"X-
|
|
41
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
42
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
42
43
|
}));
|
|
43
44
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
44
45
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|
|
@@ -38,7 +38,8 @@ async function $do(client, request, options) {
|
|
|
38
38
|
"Content-Type": "application/json",
|
|
39
39
|
Accept: "application/json",
|
|
40
40
|
"HTTP-Referer": encodeSimple("HTTP-Referer", payload["HTTP-Referer"] ?? client._options.httpReferer, { explode: false, charEncoding: "none" }),
|
|
41
|
-
"X-
|
|
41
|
+
"X-OpenRouter-Categories": encodeSimple("X-OpenRouter-Categories", payload.appCategories ?? client._options.appCategories, { explode: false, charEncoding: "none" }),
|
|
42
|
+
"X-OpenRouter-Title": encodeSimple("X-OpenRouter-Title", payload.appTitle ?? client._options.appTitle, { explode: false, charEncoding: "none" }),
|
|
42
43
|
}));
|
|
43
44
|
const secConfig = await extractSecurity(client._options.apiKey);
|
|
44
45
|
const securityInput = secConfig == null ? {} : { apiKey: secConfig };
|